Newer
Older
''[Documentation] robot --outputdir ../../outputs ./RnisSpecificSubscription_BV.robot
... Test Suite to validate RNIS/Subscription (RNIS) operations.
*** Settings ***
Library OperatingSystem
Resource environment/variables.txt
Resource resources/RadioNetworkInformationAPI.robot
Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_verify=false
Library String
TC_MEC_MEC012_SRV_RNIS_011_OK
[Documentation] Request RNIS subscription list
... Check that the RNIS service sends the list of links to the relevant RNIS subscriptions when requested
... ETSI GS MEC 012 2.1.1, clause 7.6.3.1
... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml#/definitions/SubscriptionLinkList
Get RNIS subscription list
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is SubscriptionLinkList
# The following step is faulty in the design, thus it is commented. It is kept since
# it is required by the Test Purpose TP_MEC_SRV_RNIS_011_OK
# Check Subscription ${response['body']} ${SUBSCRIPTION_VALUE}
TC_MEC_MEC012_SRV_RNIS_012_OK
[Documentation] Create RNIS subscription
... Check that the RNIS service creates a new RNIS subscription
... ETSI GS MEC 012 2.1.1, clause 7.6.3.4
... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml
Post RNIS subscription request CellChangeSubscriptionRequest
Check HTTP Response Body Json Schema Is CellChangeSubscription
Check CellChangeSubscription ${response['body']}
TC_MEC_MEC012_SRV_RNIS_013_OK
[Documentation] Get an Individual RNIS subscription
... Check that the RNIS service sends a RNIS subscription when requested
... ETSI GS MEC 012 2.1.1, clause 7.8.3.1
... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml
Get Individual RNIS Subscription
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is CellChangeSubscription
TC_MEC_MEC012_SRV_RNIS_014_OK
[Documentation] Update an Individual RNIS subscription
... Check that the RNIS service modifies a RNIS subscription when requested
... ETSI GS MEC 012 2.1.1, clause 7.8.3.2
... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml
Update Individual RNIS Subscription
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is CellChangeSubscription
TC_MEC_MEC012_SRV_RNIS_015_OK
[Documentation] Remove an Individual RNIS subscription
... Check that the RNIS service deletes a RNIS subscription when requested
... ETSI GS MEC 012 2.1.1, clause 7.8.3.5
... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml
Delete Individual RNIS Subscription
Check HTTP Response Status Code Is 204
*** Keywords ***
Get RNIS subscription list
Should Be True ${PIC_RNIS_SPECIFIC_SUBSCRIPTION} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"}
Get ${apiRoot}/rni/${apiVersion}/subscriptions?subscription_type=${SUBSCRIPTION_HREF_VALUE}
${output}= Output response
Set Suite Variable ${response} ${output}
Post RNIS subscription request
[Arguments] ${content}
Should Be True ${PIC_RNIS_SPECIFIC_SUBSCRIPTION} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
${json_file} = Catenate SEPARATOR= jsons/ ${content} .json
${body}= Get File ${json_file}
${body}= Replace String ${body} \${HREF} ${HREF}
${body}= Replace String ${body} \${LINKS_SELF} ${LINKS_SELF}
Log ${body}
Post ${apiRoot}/rni/${apiVersion}/subscriptions ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
Get Individual RNIS Subscription
Should Be True ${PIC_RNIS_SPECIFIC_SUBSCRIPTION} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"}
Get ${apiRoot}/rni/${apiVersion}/subscriptions/${SUBSCRIPTION_ID}
${output}= Output response
Set Suite Variable ${response} ${output}
Update Individual RNIS Subscription
Should Be True ${PIC_RNIS_SPECIFIC_SUBSCRIPTION} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
${body} Get File jsons/UpdateCellChangeSubscriptionRequest.json
${body}= Replace String ${body} \${HREF} ${HREF}
${body}= Replace String ${body} \${LINKS_SELF} ${LINKS_SELF}
Log ${body}
Put ${apiRoot}/rni/${apiVersion}/subscriptions/${SUBSCRIPTION_ID} ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
Delete Individual RNIS Subscription
Should Be True ${PIC_RNIS_SPECIFIC_SUBSCRIPTION} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"}
Delete ${apiRoot}/rni/${apiVersion}/subscriptions/${SUBSCRIPTION_ID}
${output}= Output response
Set Suite Variable ${response} ${output}