Newer
Older
... A test suite for validating Application Service Availability Query (APPSAQ) operations.
Resource environment/variables.txt
Library REST ${SCHEMA}://${HOST}:${PORT} ssl_verify=false
... Check that the IUT responds with a list of available MEC services
... for a given application instance when queried by a MEC Application
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.6.3.1
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
Get a list of mecService of an application instance ${APP_INSTANCE_ID}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is ServiceInfoList
[Documentation]
... Check that the IUT responds with an error when
... a request with incorrect parameters is sent by a MEC Application
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.6.3.1
# Wrong query parameter name should trigger an error response.
Get a list of mecService of an application instance with parameters ${APP_INSTANCE_ID} ${INSTANCE_ID} ${FAKE_INSTANCE_ID_VALUE}
... Check that the IUT notifies the authorised relevant (subscribed) application
... instances when a new service for a given application instance is registered
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.6.3.4
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Create new service ServiceInfo ${APP_INSTANCE_ID}
Check HTTP Response Status Code Is 201
Check HTTP Response Body Json Schema Is ServiceInfo
Check HTTP Response Header Contains Location
# Check Result Contains ${response['body']['ServiceInfo']} serName ${SERVICE_NAME}
[Documentation]
... Check that the IUT responds with an error when
... a request with incorrect parameters is sent by a MEC Application
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.6.3.4
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Create new service ServiceInfoError ${APP_INSTANCE_ID}
Check HTTP Response Status Code Is 400
[Documentation]
... Check that the IUT responds with an error when
... a request for an unknown URI is sent by a MEC Application
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.6.3.4
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Create new service ServiceInfo ${NON_EXISTENT_APP_INSTANCE_ID}
Check HTTP Response Status Code Is 404
[Documentation]
... Check that the IUT responds with the information on a specific service
... for a given application instance when queried by a MEC Application
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.7.3.1
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Get individual service ${APP_INSTANCE_ID} ${SERVICE_ID}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is ServiceInfo
Check Result Contains ${response['body']['ServiceInfo']} serInstanceId ${SERVICE_ID}
[Documentation]
... Check that the IUT responds with an error when
... a request for an unknown URI is sent by a MEC Application
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.7.3.1
[Tags] PIC_MEC_PLAT PIC_SERVICES
Get individual service ${APP_INSTANCE_ID} ${NON_EXISTENT_SERVICE_ID}
Check HTTP Response Status Code Is 404
[Documentation]
... Check that the IUT updates a service information for a given
... application instance when commanded by a MEC Application
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.7.3.2
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Update service ${APP_INSTANCE_ID} ${SERVICE_ID} ServiceInfoUpdated
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is ServiceInfo
#Check Result Contains ${response['body']['ServiceInfo']} version ${SVC_NEW_VERSION}
[Documentation]
... Check that the IUT responds with an error when
... a request with incorrect parameters is sent by a MEC Application
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.7.3.2
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Update service ${APP_INSTANCE_ID} ${SERVICE_ID} ServiceInfoUpdatedError
Check HTTP Response Status Code Is 400
[Documentation]
... Check that the IUT responds with an error when
... a request for an unknown URI is sent by a MEC Application
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.7.3.2
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Update service ${APP_INSTANCE_ID} ${NON_EXISTENT_SERVICE_ID} ServiceInfoUpdated
Check HTTP Response Status Code Is 404
[Documentation]
... Check that the IUT responds with an error when
... a request sent by a MEC Application doesn't comply with a required condition
...
... Reference ETSI GS MEC 011 V2.0.9, clause 8.2.7.3.2
... OpenAPI https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/v2.0.9/MecServiceMgmtApi.yaml#/definitions/ServiceInfo
[Tags] PIC_MEC_PLAT PIC_SERVICES
Update service with invalid etag ${APP_INSTANCE_ID} ${SERVICE_ID} ServiceInfoUpdated
Check HTTP Response Status Code Is 412
*** Keywords ***
Get a list of mecService of an application instance with parameters
[Arguments] ${appInstanceId} ${key}=None ${value}=None
Set Headers {"Accept":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Get ${apiRoot}/${apiName}/${apiVersion}/applications/${appInstanceId}/services?${key}=${value}
${output}= Output response
Set Suite Variable ${response} ${output}
Get a list of mecService of an application instance
[Arguments] ${appInstanceId}
Set Headers {"Accept":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Get ${apiRoot}/${apiName}/${apiVersion}/applications/${appInstanceId}/services
${output}= Output response
Set Suite Variable ${response} ${output}
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
Create new service
[Arguments] ${content} ${appInstanceId}
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
${file}= Catenate SEPARATOR= jsons/ ${content} .json
${body}= Get File ${file}
Post ${apiRoot}/${apiName}/${apiVersion}/applications/${appInstanceId}/services ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
Get individual service
[Arguments] ${appInstanceId} ${serviceName}
Set Headers {"Accept":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Get ${apiRoot}/${apiName}/${apiVersion}/applications/${appInstanceId}/services/${serviceName}
${output}= Output response
Set Suite Variable ${response} ${output}
Update service
[Arguments] ${appInstanceId} ${serviceId} ${content}
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
${file}= Catenate SEPARATOR= jsons/ ${content} .json
${body}= Get File ${file}
Post ${apiRoot}/${apiName}/${apiVersion}/applications/${appInstanceId}/services/${serviceId} ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
Update service with invalid etag
[Arguments] ${appInstanceId} ${serviceId} ${content}
Set Headers {"If-Match": ${INVALID_ETAG}}
Update service ${appInstanceId} ${serviceId} ${content}
# Check Plaform IUT notifies the MEC Application instances
# [Documentation]
# ...
# TODO check how to send the message (isn't defined). Does it need to be tested as it's not defined?
# // MEC 011, clause 6.4.2
# the IUT entity sends a notification_message containing
# body containing
# notificationType set to "SerAvailabilityNotification",
# services containing
# serName set to SERVICE_NAME
# _links containing
# subscription set to MP1_SUBSCRIPTION_A
# ;
# ;
# ;
# ;
# to the MEC_APP_Subscriber entity