Newer
Older
*** Settings ***
Resource environment/variables.txt
Resource environment/subscriptions.txt
Resource environment/nsDescriptors.txt # Specific nsDescriptors Parameters
Resource environment/pnfDescriptors.txt # Specific pnfDescriptors Parameters
Resource environment/individualSubscription.txt
Library REST ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT} ssl_verify=false
Library MockServerLibrary
Library OperatingSystem
Library BuiltIn
Library JSONLibrary
Library Collections
Library JSONSchemaLibrary schemas/
Library Process
GET all Network Service Descriptors Information
Log The GET method queries multiple NS descriptors
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors
${output}= Output response
Set Suite Variable ${response} ${output}
GET Network Service Descriptors Information with attribute-based filter
Log The GET method queries multiple NS descriptors using Attribute-based filtering parameters
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors?${NSD_NAME}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Body NsdInfos Matches the requested attribute-based filter
Log Checking that attribute-based filter is matched
@{words} = Split String ${NSD_NAME} ,${SEPERATOR}
Should Be Equal As Strings ${response['body'][0]['nsdName']} @{words}[1]
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
GET Network Service Descriptors Information with invalid attribute-based filter
Log The GET method queries multiple NS descriptors using Attribute-based filtering parameters. Negative case, with erroneous attribute name
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors?${NEG_FIELDS}
${output}= Output response
Set Suite Variable ${response} ${output}
Get all Network Service Descriptors Information with malformed authorization token
Pass Execution If ${AUTH_USAGE} == 0 Skipping test as NFVO is not supporting authentication
Log The GET method queries using invalid token
Set Headers {"Accept": "${ACCEPT_JSON}"}
Set Headers {"Authorization": "${BAD_AUTHORIZATION}"}
Log Execute Query and validate response
Get ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors
${output}= Output response
Set Suite Variable ${response} ${output}
Get all Network Service Descriptors Information without authorization token
Pass Execution If ${AUTH_USAGE} == 0 Skipping test as it is not supporting authentication
Log The GET method queries omitting token
Set Headers {"Accept": "${ACCEPT_JSON}"}
Log Execute Query and validate response
Get ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors
${output}= Output response
Set Suite Variable ${response} ${output}
Get all Network Service Descriptors Information with expired or revoked authorization token
Pass Execution If ${AUTH_USAGE} == 0 Skipping test as it is not supporting authentication
Log The GET method queries using invalid token
Set Headers {"Accept": "${ACCEPT_JSON}"}
Set Headers {"Authorization": "${NEG_AUTHORIZATION}"}
Log Execute Query and validate response
Get ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors
${output}= Output response
Set Suite Variable ${response} ${output}
GET all Network Service Descriptors Information with all_fields attribute selector
Log The GET method queries multiple NS descriptors using Attribute-based filtering parameters "all_fields"
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors?all_fields
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Body NsdInfos Matches the requested all_fields selector
Log Validating user defined data schema
${user}= Get Value From Json ${response['body']} $..userDefinedData
Validate Json UserDefinedData.schema.json ${user[0]}
Log Validation for schema OK
GET all Network Service Descriptors Information with exclude_default attribute selector
Log Trying to get all NSDs present in the NFVO Catalogue, using exclude_default filter.
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors?exclude_default
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Body NsdInfos Matches the requested exclude_default selector
Log Checking that element is missing
${user}= Get Value From Json ${response['body']} $..userDefinedData
Should Be Empty ${user}
Log Reports element is empty as expected
GET all Network Service Descriptors Information with fields attribute selector
Log Trying to get all NSDs present in the NFVO Catalogue, using fields filter.
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors?fields=${fields}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Body NsdInfos Matches the requested fields selector
Log Validating user defined data schema
${user}= Get Value From Json ${response['body']} $..userDefinedData
Validate Json UserDefinedData.schema.json ${user[0]}
Log Validation for schema OK
GET all Network Service Descriptors Information with exclude_fields attribute selector
Log Trying to get all NSD Managements present in the NFVO Catalogue, using filter params
Pass Execution If ${NFVO_FIELDS} == 0 The NFVO is not able to use exclude_fields option
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors?exclude_fields=${fields}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Body NsdInfos Matches the requested exclude_fields selector
Log Checking that element is missing
${user}= Get Value From Json ${response['body']} $..userDefinedData
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
Should Be Empty ${user}
Log Reports element is empty as expected
Send Post Request to create new Network Service Descriptor Resource
Log Creating a new network service descriptor
Set Headers {"Accept": "${ACCEPT_JSON}"}
Set Headers {"Content-Type": "${CONTENT_TYPE_JSON}"}
${body}= Get File jsons/createNsdInfoRequest.json
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
POST ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
Check Postcondition NsdInfo Exists
Log Checking that nsd info exists
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors/${response['body']['id']}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is NsdInfo
Send PUT Request for all Network Service Descriptors
Pass Execution If ${testOptionalMethods} == 0 optional methods are not implemented on the FUT. Skipping test.
Log Trying to perform a PUT. This method should not be implemented
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
PUT ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors
${output}= Output response
Set Suite Variable ${response} ${output}
Send PATCH Request for all Network Service Descriptors
Pass Execution If ${testOptionalMethods} == 0 optional methods are not implemented on the FUT. Skipping test.
Log Trying to perform a PATCH. This method should not be implemented
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
PATCH ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors
${output}= Output response
Set Suite Variable ${response} ${output}
Send DELETE Request for all Network Service Descriptors
Pass Execution If ${testOptionalMethods} == 0 optional methods are not implemented on the FUT. Skipping test.
Log Trying to perform a DELETE. This method should not be implemented
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
DELETE ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors
${output}= Output response
Set Suite Variable ${response} ${output}
Check Postcondition Network Service Descriptors Exist
Log Checking that Pm Job still exists
GET all Network Service Descriptors Information
GET Individual Network Service Descriptor Information
Log The GET method reads information about an individual NS descriptor
Set Headers {"Accept": "${ACCEPT_JSON}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/ns_descriptors/${nsdInfoId}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Body NsdInfo Identifier matches the requested Network Service Descriptor Information
Log Going to validate info retrieved
Should Be Equal ${response['body']['id']} ${nsdInfoId}
Log NSD identifier as expected
GET Individual Network Service Descriptor Information with invalid resource identifier
Log Trying to perform a GET on an erroneous nsDescriptorInfoId
Set Headers {"Accept": "${ACCEPT_JSON}"}
Loading full blame...