Commit efdf31e2 authored by Elian Kraja's avatar Elian Kraja Committed by Michele Carignani

Updated MEC012 to v2.1.1

parent 68c4b45a
Pipeline #3720 passed with stage
in 0 seconds
This diff is collapsed.
...@@ -14,7 +14,7 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v ...@@ -14,7 +14,7 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v
Request RabInfo info using wrong parameters Request RabInfo info using wrong parameters
[Documentation] TC_MEC_SRV_RNIS_016_BR [Documentation] TC_MEC_SRV_RNIS_016_BR
... Check that the RNIS service returns an error when the RAB information is requested with a malformatted message ... Check that the RNIS service returns an error when the RAB information is requested with a malformatted message
... ETSI GS MEC 012 2.0.4, clause 7.3.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.3.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo
Get RabInfo info using wrong parameters Get RabInfo info using wrong parameters
Check HTTP Response Status Code Is 400 Check HTTP Response Status Code Is 400
...@@ -24,7 +24,7 @@ Request RabInfo info using wrong parameters ...@@ -24,7 +24,7 @@ Request RabInfo info using wrong parameters
Request RabInfo info using non existing cell id Request RabInfo info using non existing cell id
[Documentation] TC_MEC_SRV_RNIS_016_BR [Documentation] TC_MEC_SRV_RNIS_016_BR
... Check that the RNIS service returns an error when the RAB information for a not existing element is requested ... Check that the RNIS service returns an error when the RAB information for a not existing element is requested
... ETSI GS MEC 012 2.0.4, clause 7.3.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.3.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo
Get RabInfo info using non existing cell id Get RabInfo info using non existing cell id
Check HTTP Response Status Code Is 404 Check HTTP Response Status Code Is 404
...@@ -34,7 +34,7 @@ Request RabInfo info using non existing cell id ...@@ -34,7 +34,7 @@ Request RabInfo info using non existing cell id
Request Plmn info using wrong parameters Request Plmn info using wrong parameters
[Documentation] TC_MEC_SRV_RNIS_017_BR [Documentation] TC_MEC_SRV_RNIS_017_BR
... Check that the RNIS service returns an error when the PLMN information is requested with a malformatted message ... Check that the RNIS service returns an error when the PLMN information is requested with a malformatted message
... ETSI GS MEC 012 2.0.4, clause 7.4.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.4.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo
Get PLMN info using wrong parameters Get PLMN info using wrong parameters
Check HTTP Response Status Code Is 400 Check HTTP Response Status Code Is 400
...@@ -44,7 +44,7 @@ Request Plmn info using wrong parameters ...@@ -44,7 +44,7 @@ Request Plmn info using wrong parameters
Request Plmn info using non existing application id Request Plmn info using non existing application id
[Documentation] TC_MEC_SRV_RNIS_017_NF [Documentation] TC_MEC_SRV_RNIS_017_NF
... Check that the RNIS service returns an error when the PLMN information for a not existing element is requested ... Check that the RNIS service returns an error when the PLMN information for a not existing element is requested
... ETSI GS MEC 012 2.0.4, clause 7.4.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.4.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo
Get PLMN info using non existing application id Get PLMN info using non existing application id
Check HTTP Response Status Code Is 404 Check HTTP Response Status Code Is 404
...@@ -54,7 +54,7 @@ Request Plmn info using non existing application id ...@@ -54,7 +54,7 @@ Request Plmn info using non existing application id
Request S1Bearer info using wrong parameters Request S1Bearer info using wrong parameters
[Documentation] TC_MEC_SRV_RNIS_018_BR [Documentation] TC_MEC_SRV_RNIS_018_BR
... Check that the RNIS service returns an error when the S1 bearer information is requested with a malformatted message ... Check that the RNIS service returns an error when the S1 bearer information is requested with a malformatted message
... ETSI GS MEC 012 2.0.4, clause 7.4.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.5.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo
Get S1Bearer info using wrong parameters Get S1Bearer info using wrong parameters
Check HTTP Response Status Code Is 400 Check HTTP Response Status Code Is 400
...@@ -64,7 +64,7 @@ Request S1Bearer info using wrong parameters ...@@ -64,7 +64,7 @@ Request S1Bearer info using wrong parameters
Request S1Bearer info using non existing cell id Request S1Bearer info using non existing cell id
[Documentation] TC_MEC_SRV_RNIS_018_BR [Documentation] TC_MEC_SRV_RNIS_018_BR
... Check that the RNIS service returns an error when the S1 bearer information is requested with a malformatted message ... Check that the RNIS service returns an error when the S1 bearer information is requested with a malformatted message
... ETSI GS MEC 012 2.0.4, clause 7.4.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.5.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo
Get S1Bearer info using non existing cell id Get S1Bearer info using non existing cell id
Check HTTP Response Status Code Is 404 Check HTTP Response Status Code Is 404
...@@ -74,7 +74,7 @@ Request S1Bearer info using non existing cell id ...@@ -74,7 +74,7 @@ Request S1Bearer info using non existing cell id
Request L2Meas info using wrong parameters Request L2Meas info using wrong parameters
[Documentation] TC_MEC_SRV_RNIS_019_BR [Documentation] TC_MEC_SRV_RNIS_019_BR
... Check that the RNIS service returns an error when the L2 measurements information is requested with a malformatted message ... Check that the RNIS service returns an error when the L2 measurements information is requested with a malformatted message
... ETSI GS MEC 012 2.0.4, clause 7.5a.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.5a.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo
Get L2Meas info using wrong parameters Get L2Meas info using wrong parameters
Check HTTP Response Status Code Is 400 Check HTTP Response Status Code Is 400
...@@ -84,7 +84,7 @@ Request L2Meas info using wrong parameters ...@@ -84,7 +84,7 @@ Request L2Meas info using wrong parameters
Request L2Meas info using non existing cell id Request L2Meas info using non existing cell id
[Documentation] TC_MEC_SRV_RNIS_019_BR [Documentation] TC_MEC_SRV_RNIS_019_BR
... Check that the RNIS service returns an error when the L2 measurements information for a not existing element is requested ... Check that the RNIS service returns an error when the L2 measurements information for a not existing element is requested
... ETSI GS MEC 012 2.0.4, clause 7.5a.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.5a.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo
Get L2Meas info using non existing cell id Get L2Meas info using non existing cell id
Check HTTP Response Status Code Is 404 Check HTTP Response Status Code Is 404
...@@ -152,7 +152,7 @@ Get S1Bearer info using non existing cell id ...@@ -152,7 +152,7 @@ Get S1Bearer info using non existing cell id
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/queries/s1_bearer_info?cell_id=${NOT_EXISTENT_CELL_ID} Get ${apiRoot}/rni/${apiVersion}/queries/s1_bearer_info?cell_id=${NOT_EXISTENT_CELL_ID}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -163,7 +163,7 @@ Get L2Meas info using wrong parameters ...@@ -163,7 +163,7 @@ Get L2Meas info using wrong parameters
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/queries/layer2_meas?c_id=${C_ID} Get ${apiRoot}/rni/${apiVersion}/queries/layer2_meas?c_id=${C_ID}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -174,6 +174,6 @@ Get L2Meas info using non existing cell id ...@@ -174,6 +174,6 @@ Get L2Meas info using non existing cell id
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/queries/layer2_meas?cell_id=${NOT_EXISTENT_CELL_ID} Get ${apiRoot}/rni/${apiVersion}/queries/layer2_meas?cell_id=${NOT_EXISTENT_CELL_ID}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -14,43 +14,45 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v ...@@ -14,43 +14,45 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v
Request RabInfo info Request RabInfo info
[Documentation] TC_MEC_SRV_RNIS_016_OK [Documentation] TC_MEC_SRV_RNIS_016_OK
... Check that the RNIS service returns the RAB information when requested ... Check that the RNIS service returns the RAB information when requested
... ETSI GS MEC 012 2.0.4, clause 7.3.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.3.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/RabInfo
Get RabInfo info Get RabInfo info
Check HTTP Response Status Code Is 200 Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is RadioNetworkInformationAPI Check HTTP Response Body Json Schema Is RabInfos
Check RabInfo ${response['body']['RabInfo']} Check RabInfo ${response['body']}
Request Plmn info Request Plmn info
[Documentation] TC_MEC_SRV_RNIS_017_OK [Documentation] TC_MEC_SRV_RNIS_017_OK
... Check that the RNIS service returns the PLMN information when requested ... Check that the RNIS service returns the PLMN information when requested
... ETSI GS MEC 012 2.0.4, clause 7.4.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.4.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/PlmnInfo
Get PLMN info Get PLMN info
Check HTTP Response Status Code Is 200 Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is RadioNetworkInformationAPI Check HTTP Response Body Json Schema Is PlmnInfos
Check PlmnInfo ${response['body']['PlmnInfo']} Check PlmnInfo ${response['body']}
Request S1Bearer info Request S1Bearer info
[Documentation] TC_MEC_SRV_RNIS_018_OK [Documentation] TC_MEC_SRV_RNIS_018_OK
... Check that the RNIS service returns the S1 bearer information ... Check that the RNIS service returns the S1 bearer information
... ETSI GS MEC 012 2.0.4, clause 7.4.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.5.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo
Get S1Bearer info Get S1Bearer info
Check HTTP Response Status Code Is 200 Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is RadioNetworkInformationAPI Check HTTP Response Body Json Schema Is S1BearerInfos
#log ${response['body']} #log ${response['body']}
Check S1BearerInfo ${response['body']['S1BearerInfo']} Check S1BearerInfo ${response['body']}
Request L2Meas info Request L2Meas info
[Documentation] TC_MEC_SRV_RNIS_019_OK [Documentation] TC_MEC_SRV_RNIS_019_OK
... Check that the RNIS service returns the L2 measurements information ... Check that the RNIS service returns the L2 measurements information
... ETSI GS MEC 012 2.0.4, clause 7.4.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.5a.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/S1BearerInfo ... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/L2Meas
Fail msg=Too many changes in JSON data description, not implemented Get Layer2Meas Info
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is Layer2MeasInfos
Check L2MeasInfo ${response['body']}
*** Keywords *** *** Keywords ***
...@@ -60,7 +62,7 @@ Get RabInfo info ...@@ -60,7 +62,7 @@ Get RabInfo info
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/queries/rab_info?cell_id=${CELL_ID} Get ${apiRoot}/rni/${apiVersion}/queries/rab_info?cell_id=${CELL_ID}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -70,7 +72,7 @@ Get Plmn info ...@@ -70,7 +72,7 @@ Get Plmn info
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/queries/plmn_info?app_ins_id=${APP_INS_ID} Get ${apiRoot}/rni/${apiVersion}/queries/plmn_info?app_ins_id=${APP_INS_ID}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -81,6 +83,17 @@ Get S1Bearer info ...@@ -81,6 +83,17 @@ Get S1Bearer info
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/queries/s1_bearer_info?cell_id=${CELL_ID} Get ${apiRoot}/rni/${apiVersion}/queries/s1_bearer_info?cell_id=${CELL_ID}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
Get Layer2Meas Info
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}/queries/layer2_meas?cell_id=${CELL_ID}
${output}= Output response
Set Suite Variable ${response} ${output}
\ No newline at end of file
...@@ -14,21 +14,19 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v ...@@ -14,21 +14,19 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v
Request RNIS subscription list using bad parameters Request RNIS subscription list using bad parameters
[Documentation] TC_MEC_SRV_RNIS_011_BR [Documentation] TC_MEC_SRV_RNIS_011_BR
... Check that the RNIS service responds with an error when it receives a request to get all RNIS subscriptions with a wrong subscription type ... Check that the RNIS service responds with an error when it receives a request to get all RNIS subscriptions with a wrong subscription type
... ETSI GS MEC 012 2.0.4, clause 7.6.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.6.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/SubscriptionLinkList ... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml#/definitions/SubscriptionLinkList
Get RNIS subscription list with wrong parameter Get RNIS subscription list with wrong parameter
Check HTTP Response Status Code Is 400 Check HTTP Response Status Code Is 400
Check ProblemDetails 400
Create RNIS subscription using bad parameters Create RNIS subscription using bad parameters
[Documentation] TC_MEC_SRV_RNIS_012_BR [Documentation] TC_MEC_SRV_RNIS_012_BR
... Check that the RNIS service responds with an error when it receives a request to create a new RNIS subscription with a wrong format ... Check that the RNIS service responds with an error when it receives a request to create a new RNIS subscription with a wrong format
... ETSI GS MEC 012 2.0.4, clause 7.6.3.4 ... ETSI GS MEC 012 2.1.1, clause 7.6.3.4
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml ... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml
Post RNIS subscription request {"CellChangeSubscription": {"subscriptionType": "CelCangeSubscription", "callbackReference": "${HREF}", "_links": {"self": "${LINKS_SELF}"}, "filterCriteria": {"appInsId": "01", "associateId": [{"type": "UE_IPV4_ADDRESS", "value": 1}], "plmn": {"mcc": "01", "mnc": "001"}, "cellId": ["800000"], "hoStatus": "COMPLETED"}, "expiryDeadline": {"seconds": 1577836800, "nanoSeconds": 0}}} Post RNIS subscription request {"CellChangeSubscription": {"subscriptionType": "CelCangeSubscription", "callbackReference": "${HREF}", "_links": {"self": "${LINKS_SELF}"}, "filterCriteria": {"appInsId": "01", "associateId": [{"type": "UE_IPV4_ADDRESS", "value": 1}], "plmn": {"mcc": "01", "mnc": "001"}, "cellId": ["800000"], "hoStatus": "COMPLETED"}, "expiryDeadline": {"seconds": 1577836800, "nanoSeconds": 0}}}
Check HTTP Response Status Code Is 400 Check HTTP Response Status Code Is 400
Check ProblemDetails 400
*** Keywords *** *** Keywords ***
...@@ -38,7 +36,7 @@ Get RNIS subscription list with wrong parameter ...@@ -38,7 +36,7 @@ Get RNIS subscription list with wrong parameter
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/subscriptions?subscription_type=wrongSubscriptionType Get ${apiRoot}/rni/${apiVersion}/subscriptions?subscription_type=wrongSubscriptionType
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -49,6 +47,6 @@ Post RNIS subscription request ...@@ -49,6 +47,6 @@ Post RNIS subscription request
Set Headers {"Accept":"application/json"} Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Post /exampleAPI/rni/v2/subscriptions ${content} Post ${apiRoot}/rni/${apiVersion}/subscriptions ${content}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
... Test Suite to validate RNIS/Subscription (RNIS) operations. ... Test Suite to validate RNIS/Subscription (RNIS) operations.
*** Settings *** *** Settings ***
Library OperatingSystem
Resource environment/variables.txt Resource environment/variables.txt
Resource ../../pics.txt Resource ../../pics.txt
Resource ../../GenericKeywords.robot Resource ../../GenericKeywords.robot
...@@ -14,25 +15,52 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v ...@@ -14,25 +15,52 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v
Request RNIS subscription list Request RNIS subscription list
[Documentation] TC_MEC_SRV_RNIS_011_OK [Documentation] TC_MEC_SRV_RNIS_011_OK
... Check that the RNIS service sends the list of links to the relevant RNIS subscriptions when requested ... Check that the RNIS service sends the list of links to the relevant RNIS subscriptions when requested
... ETSI GS MEC 012 2.0.4, clause 7.6.3.1 ... ETSI GS MEC 012 2.1.1, clause 7.6.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/SubscriptionLinkList ... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml#/definitions/SubscriptionLinkList
Get RNIS subscription list Get RNIS subscription list
Check HTTP Response Status Code Is 200 Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is RadioNetworkInformationAPI Check HTTP Response Body Json Schema Is SubscriptionLinkList
Check Subscription ${response['body']['SubscriptionLinkList']} ${SUBSCRIPTION_VALUE} Check Subscription ${response['body']} ${SUBSCRIPTION_VALUE}
Create RNIS subscription Create RNIS subscription
[Documentation] TC_MEC_SRV_RNIS_012_OK [Documentation] TC_MEC_SRV_RNIS_012_OK
... Check that the RNIS service creates a new RNIS subscription ... Check that the RNIS service creates a new RNIS subscription
... ETSI GS MEC 012 2.0.4, clause 7.6.3.4 ... ETSI GS MEC 012 2.1.1, clause 7.6.3.4
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml ... Reference https://forge.etsi.org/rep/mec/gs012-rnis-api/blob/automatic_generation/RniAPI.yaml
Post RNIS subscription request {"CellChangeSubscription": {"subscriptionType": "CELL_CHANGE", "callbackReference": "${HREF}", "_links": {"self": "${LINKS_SELF}"}, "filterCriteria": {"appInsId": "01", "associateId": [{"type": "UE_IPV4_ADDRESS", "value": 1}], "plmn": {"mcc": "01", "mnc": "001"}, "cellId": ["800000"], "hoStatus": "COMPLETED"}, "expiryDeadline": {"seconds": 1577836800, "nanoSeconds": 0}}} Post RNIS subscription request CellChangeSubscription
Check HTTP Response Status Code Is 201 Check HTTP Response Status Code Is 201
Check HTTP Response Body Json Schema Is RadioNetworkInformationAPI Check HTTP Response Body Json Schema Is CellChangeSubscriptionRequest
Check CellChangeSubscription ${response['body']['CellChangeSubscription']} Check CellChangeSubscription ${response['body']}
Get an Individual RNIS subscription
[Documentation] TC_MEC_SRV_RNIS_013_OK
... 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 CellChangeSubscriptionRequest
Update an Individual RNIS subscription
[Documentation] TC_MEC_SRV_RNIS_014_OK
... 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 CellChangeSubscriptionRequest
Remove an Individual RNIS subscription
[Documentation] TC_MEC_SRV_RNIS_015_OK
... 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 *** *** Keywords ***
Get RNIS subscription list Get RNIS subscription list
Should Be True ${PIC_RNIS_SPECIFIC_SUBSCRIPTION} == 1 Should Be True ${PIC_RNIS_SPECIFIC_SUBSCRIPTION} == 1
...@@ -40,7 +68,7 @@ Get RNIS subscription list ...@@ -40,7 +68,7 @@ Get RNIS subscription list
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/rni/v2/subscriptions?subscription_type=${SUBSCRIPTION_HREF_VALUE} Get ${apiRoot}/rni/${apiVersion}/subscriptions?subscription_type=${SUBSCRIPTION_HREF_VALUE}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
...@@ -51,6 +79,40 @@ Post RNIS subscription request ...@@ -51,6 +79,40 @@ Post RNIS subscription request
Set Headers {"Accept":"application/json"} Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"} Set Headers {"Authorization":"${TOKEN}"}
Post /exampleAPI/rni/v2/subscriptions ${content} ${body} Get File jsons/CellChangeSubscriptionRequest.json
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
Put ${apiRoot}/rni/${apiVersion}/subscriptions/${SUBSCRIPTION_ID} ${body}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} 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}
\ No newline at end of file
...@@ -20,6 +20,11 @@ ${NOT_EXISTENT_APP_INS_ID} 99 ...@@ -20,6 +20,11 @@ ${NOT_EXISTENT_APP_INS_ID} 99
${response} {} ${response} {}
${TOKEN} Basic YWxhZGRpbjpvcGVuc2VzYW1l ${TOKEN} Basic YWxhZGRpbjpvcGVuc2VzYW1l
${apiRoot}
${apiVersion} v2
# Notifications variables # Notifications variables
${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar ${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar
......
{
"subscriptionType": "CellChangeSubscription",
"callbackReference": "${HREF}",
"_links": {
"self": {
"href": "${LINKS_SELF}"
}
},
"filterCriteriaAssocHo": {},
}
\ No newline at end of file
{
"subscriptionType": "CellChangeSubscription",
"callbackReference": "${HREF}",
"_links": {
"self": {
"href": "${LINKS_SELF}"
}
},
"filterCriteriaAssocHo": {},
}
\ No newline at end of file
...@@ -10,10 +10,11 @@ Library JSONSchemaLibrary schemas/ ...@@ -10,10 +10,11 @@ Library JSONSchemaLibrary schemas/
Check Subscription Check Subscription
[Arguments] ${received_value} ${expected_value} [Arguments] ${received_value} ${expected_value}
Should Be Equal ${received_value['_links']['self']} ${LINKS_SELF} Should Be Equal ${received_value['_links']['self']} ${LINKS_SELF}
:FOR ${item} IN @{received_value['subscription']} ${length} Get Length ${received_value['subscription']}
\ Exit For Loop If ${item} == ${expected_value} :FOR ${item} IN RANGE 0 ${length}
Log Item found ${item} \ Exit For Loop If ${received_value['subscription'][${item}]} == ${expected_value}
[return] ${item} Log Item found ${received_value['subscription'][${item}]}
[return] ${received_value['subscription'][${item}]}
Check CellChangeSubscription Check CellChangeSubscription
...@@ -24,23 +25,25 @@ Check CellChangeSubscription ...@@ -24,23 +25,25 @@ Check CellChangeSubscription
Check RabInfo Check RabInfo
[Arguments] ${received_value} [Arguments] ${received_value}
log ${received_value} log ${received_value}
Should Be Equal ${received_value['appInsId']} ${APP_INS_ID} Should Be Equal As Strings ${received_value['appInstanceId']} ${APP_INS_ID}
Should Not Contain ${received_value['requestId']} "" Should Not Be Empty ${received_value['requestId']}
Should Be Equal ${received_value['cellUserInfo'][0]['ecgi']['cellId']} ${CELL_ID} Should Be Equal As Strings ${received_value['cellUserInfo'][0]['ecgi']['cellId']} ${CELL_ID}
# TODO How to check the presence of a field
Check PlmnInfo Check PlmnInfo
[Arguments] ${received_value} [Arguments] ${received_value}
log ${received_value} log ${received_value}
Should Be Equal ${received_value['appInsId']} ${APP_INS_ID} Should Be Equal As Strings ${received_value['appInstanceId']} ${APP_INS_ID}
Should Not Contain ${received_value['plmn'][0]['mcc']} "" Should Not Be Empty ${received_value['plmn'][0]['mcc']}
Should Not Contain ${received_value['plmn'][0]['mnc']} "" Should Not Be Empty ${received_value['plmn'][0]['mnc']}
# TODO How to check the presence of a field
Check S1BearerInfo Check S1BearerInfo
[Arguments] ${received_value} [Arguments] ${received_value}
log ${received_value} log ${received_value}
#Should Not Contain ${received_value['s1UeInfo'][0]['ecgi']['cellId']} ${CELL_ID} Should Be Equal As Strings ${received_value['s1UeIffo']['ecgi']['cellId']} ${CELL_ID}
# TODO How to check the presence of a field
Check L2MeasInfo
[Arguments] ${received_value}
log ${received_value}
Should Be Equal As Strings ${received_value['cellInfo']['ecgi']['cellId']} ${CELL_ID}
{
"properties": {
"_links": {
"description": "Hyperlink related to the resource. This shall be only included in the HTTP responses and in HTTP PUT requests.",
"type": "object",
"x-etsi-mec-cardinality": "0..1",
"x-etsi-mec-origin-type": "Structure (inlined)"
},
"callbackReference": {
"description": "URI selected by the service consumer to receive notifications on the subscribed RNIS information. This shall be included both in the request and in response.",
"format": "uri",
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "URI"
},
"expiryDeadline": {
"properties": {
"nanoSeconds": {
"type": "number"
},
"seconds": {
"type": "number"
}
},
"required": [
"seconds",
"nanoSeconds"
],
"type": "object",
"x-etsi-ref": "6.5.3"
},
"filterCriteriaAssoc": {
"description": "List of filtering criteria for the subscription. Any filtering criteria from below, which is included in the request, shall also be included in the response.",
"type": "object",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "Structure (inlined)"
},
"subscriptionType": {
"description": "Shall be set to \"CaReconfSubscription\".",
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "String"
}
},
"required": [
"subscriptionType",
"callbackReference",
"filterCriteriaAssoc"
],
"type": "object",
"x-etsi-ref": "6.3.8"
}
\ No newline at end of file
{
"properties": {
"associateId": {
"description": "0 to N identifiers to associate the event for a specific UE or flow.",
"items": {
"properties": {
"type": {
"description": "Numeric value (0-255) corresponding to specified type of identifier as following:\n0 = reserved.\n1= UE_IPv4_ADDRESS.\n2 = UE_IPV6_ADDRESS.\n3 = NATED_IP_ADDRESS.\n4 = GTP_TEID.",
"enum": [
"SEE_DESCRIPTION"
],
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "Enum"
},
"value": {
"description": "Value for the identifier.",
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "String"
}
},
"required": [
"type",
"value"
],
"type": "object",
"x-etsi-ref": "6.5.4"
},
"type": "array",
"x-etsi-mec-cardinality": "0..N",
"x-etsi-mec-origin-type": "AssociateId"
},
"hoStatus": {
"description": "Indicate the status of the UE handover procedure. Values are defined as following:\n1 = IN_PREPARATION.\n2 = IN_EXECUTION.\n3 = COMPLETED.\n4 = REJECTED.\n5 = CANCELLED.",
"enum": [
"SEE_DESCRIPTION"
],
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "Enum"
},
"notificationType": {
"description": "Shall be set to \"CellChangeNotification\".",
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "String"
},
"srcEcgi": {
"properties": {
"cellId": {
"description": "String representing the E-UTRAN Cell Identity. Encoded as a bit string (size (28)) as defined in ETSI TS 136 413 [i.3].",
"type": "string"
},
"plmn": {
"properties": {
"mcc": {
"description": "The Mobile Country Code part of PLMN Identity as defined in ETSI TS 136 413 [i.3].",
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "String"
},
"mnc": {
"description": "The Mobile Network Code part of PLMN Identity as defined in ETSI TS 136 413 [i.3].",
"type": "string",
"x-etsi-mec-cardinality": "1",
"x-etsi-mec-origin-type": "String"
}
},
"required": [
"mcc",
"mnc"
],
"type": "object",
"x-etsi-ref": "6.5.5"
}
},
"required": [
"plmn",
"cellId"
],
"type": "object",
"x-etsi-ref": "6.5.6"
},
"tempUeId": {
"description": "The temporary identifier allocated for the specific UE as defined below.",
"type": "object",
"x-etsi-mec-cardinality": "0..1",
"x-etsi-mec-origin-type": "Structure (inlined)"
},
"timeStamp": {
"properties": {
"nanoSeconds": {
"type": "number"
},
"seconds": {
"type": "number"