Newer
Older
*** Settings ***
Resource environment/variables.txt
Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT}
Library OperatingSystem
Library JSONLibrary
Library JSONSchemaLibrary schemas/
*** Test Cases ***
Create a new subscription
... Test title: Create a new subscription
... Test objective: The objective is to create a new subscription.
... Pre-conditions: no subscription with the same filter and callbackUri exists
... Reference: section 7.4.5.3.1 - SOL002 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
Post Create subscription
Check HTTP Response Status Code Is 201
Check HTTP Response Body Json Schema Is FmSubscription
Create a new Subscription - DUPLICATION
... Test title: Create a new Subscription - DUPLICATION
... Test objective: The objective is to create a duplicate subscription.
... Pre-conditions: subscription with the same filter and callbackUri exists
... Reference: section 7.4.5.3.1 - SOL002 v2.4.1
... Applicability: the VNFM does not allow creation of a subscription resource if another subscription resource with the same filter and callbackUri already exists
... Post-Conditions: duplicated subscription is created
Post Create subscription - DUPLICATION
Check HTTP Response Status Code Is 201
Check HTTP Response Body Json Schema Is FmSubscription
Create a new Subscription - NO-DUPLICATION
... Test title: Create a new Subscription - NO-DUPLICATION
... Test objective: The objective is to create a subscription in case of not allowed DUPLICATION.
... Pre-conditions: subscription with the same filter and callbackUri exists
... Reference: section 7.4.5.3.1 - SOL002 v2.4.1
... Applicability: the VNFM does not allow creation of a duplicate subscription resource
... Post-Conditions: duplicated subscription is not created
Post Create subscription - DUPLICATION
Check HTTP Response Status Code Is 303
GET Subscriptions
... Test title: GET Subscriptions
... Test objective: The objective is to retrieve the list of active subscriptions
... Pre-conditions:
... Reference: section 7.4.5.3.2 - SOL002 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions: subscription is not deleted
Get subscriptions
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is FmSubscriptions
GET Subscription - Filter
... Test title: GET Subscription - Filter
... Test objective: The objective is to retrieve the list of active subscriptions with filter
... Pre-conditions:
... Reference: section 7.4.5.3.2 - SOL002 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions:
Get subscriptions - filter
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is FmSubscriptions
GET subscriptions - Bad Request Invalid attribute-based filtering parameters
... Test title: GET subscriptions - Bad Request Invalid attribute-based filtering parameters
... Test objective: The objective is to retrieve the list of active subscriptions with Invalid attribute-based filtering parameters
... Pre-conditions:
... Reference: section 7.4.5.3.2 - SOL002 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions:
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
Get subscriptions - invalid filter
Check HTTP Response Status Code Is 400
Check HTTP Response Body Json Schema Is ProblemDetails
PUT subscriptions - Method not implemented
[Documentation] Test ID: 6.3.4.4.8
... Test title: PUT subscriptions - Method not implemented
... Test objective: The objective is to test that the method is not implemented
... Pre-conditions:
... Reference: section 7.4.5.3.3 - SOL002 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions:
PUT subscriptions
Check HTTP Response Status Code Is 405
PATCH subscriptions - Method not implemented
[Documentation] Test ID: 6.3.4.4.9
... Test title: PUT subscriptions - Method not implemented
... Test objective: The objective is to test that the method is not implemented
... Pre-conditions:
... Reference: section 7.4.5.3.4 - SOL002 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions:
PATCH subscriptions
Check HTTP Response Status Code Is 405
DELETE subscriptions - Method not implemented
[Documentation] Test ID: 6.3.4.4.10
... Test title: DELETE subscriptions - Method not implemented
... Test objective: The objective is to test that the method is not implemented
... Pre-conditions:
... Reference: section 7.4.5.3.5 - SOL002 v2.4.1
... Config ID: Config_prod_VNFM
... Applicability:
... Post-Conditions: subscription not deleted
119
120
121
122
123
124
125
126
127
128
129
130
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
DELETE subscriptions
Check HTTP Response Status Code Is 405
*** Keywords ***
Post Create subscription
Log Create subscription instance by POST to ${apiRoot}/${apiName}/${apiVersion}/subscriptions
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
${body}= Get File jsons/fmSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Post Create subscription - DUPLICATION
Log Trying to create a subscription with an already created content
Pass Execution If ${VNFM_ALLOWS_DUPLICATE_SUBS} == 0 NVFO is not permitting duplication. Skipping the test
Set Headers {"Accept": "${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
${body}= Get File jsons/fmSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Post Create subscription - NO-DUPLICATION
Log Trying to create a subscription with an already created content
Pass Execution If ${VNFM_ALLOWS_DUPLICATE_SUBS} == 1 VNFM permits duplication. Skipping the test
Set Headers {"Accept": "${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
${body}= Get File jsons/fmSubscriptionRequest.json
Post ${apiRoot}/${apiName}/${apiVersion}/subscriptions ${body}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Get subscriptions
Log Get the list of active subscriptions
Set Headers {"Accept":"${ACCEPT}"}
Set Headers {"Content-Type": "${CONTENT_TYPE}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Log Execute Query and validate response
Get ${apiRoot}/${apiName}/${apiVersion}/subscriptions
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Get subscriptions - filter
Log Get the list of active subscriptions using a filter
Set Headers {"Accept": "${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
Get subscriptions - invalid filter
Log Get the list of active subscriptions using an invalid filter
Set Headers {"Accept": "${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization": "${AUTHORIZATION}"}
GET ${apiRoot}/${apiName}/${apiVersion}/subscriptions?${sub_filter_invalid}
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
PUT subscriptions
log Trying to perform a PUT. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Put ${apiRoot}/${apiName}/${apiVersion}/subscriptions
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
PATCH subscriptions
log Trying to perform a PATCH. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Patch ${apiRoot}/${apiName}/${apiVersion}/subscriptions
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}
DELETE subscriptions
log Trying to perform a DELETE. This method should not be implemented
Set Headers {"Accept":"${ACCEPT}"}
Run Keyword If ${AUTH_USAGE} == 1 Set Headers {"Authorization":"${AUTHORIZATION}"}
Delete ${apiRoot}/${apiName}/${apiVersion}/subscriptions
${outputResponse}= Output response
Set Global Variable @{response} ${outputResponse}