Commit 719d4daf authored by Elian Kraja's avatar Elian Kraja
Browse files

Refactoring generic elements. Added MEC-021 Robotframework code

parents c38aaf8c 049d3a21
...@@ -28,7 +28,6 @@ Should Be Present In Json List ...@@ -28,7 +28,6 @@ Should Be Present In Json List
Log Item found ${item} Log Item found ${item}
[return] ${item} [return] ${item}
Check Result Contains
Check Result Contains
[Arguments] ${source} ${parameter} ${value} [Arguments] ${source} ${parameter} ${value}
Should Be Present In Json List ${source} ${parameter} ${value} Should Be Present In Json List ${source} ${parameter} ${value}
\ No newline at end of file
''[Documentation] robot --outputdir ../../outputs ./RnisSpecificSubscription_BV.robot
... Test Suite to validate RNIS/Subscription (RNIS) operations.
*** Settings ***
Resource environment/variables.txt
Resource environment/pics.txt
Resource resources/GenericKeywords.robot
Resource resources/RadioNetworkInformationAPI.robot
Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_verify=false
*** Test Cases ***
Request RNIS subscription list
[Documentation] TC_MEC_SRV_RNIS_011_OK
... 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
... Reference https://forge.etsi.org/gitlab/mec/gs012-rnis-api/blob/master/RniAPI.yaml#/definitions/SubscriptionLinkList
Get RNIS subscription list
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is RadioNetworkInformationAPI
log ${response['body']['SubscriptionLinkList']['_links']}
Should Be Equal ${response['body']['SubscriptionLinkList']['_links']['self']} ${LINKS_SELF}
*** 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 /exampleAPI/rni/v2/subscriptions
${output}= Output response
Set Suite Variable ${response} ${output}
*** Variables ***
${PIC_RNIS_SPECIFIC_SUBSCRIPTION} 1
*** Variables ***
${MEC-APP_SCHEMA} http
#${MEC-APP_HOST} 172.28.4.87
#${MEC-APP_HOST} 127.0.0.1
${MEC-APP_HOST} 192.168.56.1
${MEC-APP_PORT} 8081
${SUBSCRIPTION_ID} 7777
${NON_EXISTENT_SUBSCRIPTION_ID} 6666
${LINKS_SELF} http://example.com/exampleAPI/rni/v2/subscriptions
${response} {}
${TOKEN} Basic YWxhZGRpbjpvcGVuc2VzYW1l
*** Settings ***
Resource ../environment/variables.txt
Resource GenericKeywords.robot
Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_verify=false
Library JSONSchemaLibrary schemas/
*** Keywords ***
Get User Equipment for location with filters
[Arguments] ${value}
Set Headers {"Accept":"application/json"}
Get /location/v2/users/${value}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is
[Arguments] ${expected_status}
${status}= Convert To Integer ${expected_status}
Should Be Equal ${response['status']} ${status}
Log Status code validated
Check HTTP Response Body Json Schema Is
[Arguments] ${input}
Should Contain ${response['headers']['Content-Type']} application/json
${schema} = Catenate SEPARATOR= ${input} .schema.json
Validate Json ${schema} ${response['body']}
Log Json Schema Validation OK
Should Be Present In Json List
[Arguments] ${expr} ${json_field} ${json_value}
Log Check if ${json_field} is present in ${expr} with the value ${jsonvalue}
:FOR ${item} IN @{expr}
\ Exit For Loop If "${item['${json_field}']}" == "${json_value}"
Log Item found ${item}
[return] ${item}
Check Result Contains
[Arguments] ${source} ${parameter} ${value}
Should Be Present In Json List ${source} ${parameter} ${value}
*** Settings ***
Resource ../environment/variables.txt
Resource LocationAPI.robot
#Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_verify=false
Library JSONSchemaLibrary schemas/
*** Keywords ***
Check Location
[Arguments] ${value}
Log Check Location for userInfo element
Should be Equal ${response['body']['userInfo']['zoneId']} ${value}
Log Location OK
*** Settings ***
Resource ../environment/variables.txt
Resource ../environment/pics.txt
Resource GenericKeywords.robot
Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_verify=false
Library JSONSchemaLibrary schemas/
*** Keywords ***
This diff is collapsed.
''[Documentation] robot --outputdir ./outputs ./SRV/UETAG/PlatUeIdentity.robot ''[Documentation] robot --outputdir ../../outputs ./PlatUeIdentity.robot
... Test Suite to validate UE Identity Tag (UETAG) operations. ... Test Suite to validate UE Identity Tag (UETAG) operations.
*** Settings *** *** Settings ***
...@@ -15,12 +15,12 @@ Request UE Identity Tag information ...@@ -15,12 +15,12 @@ Request UE Identity Tag information
[Documentation] TC_MEC_SRV_UETAG_001_OK [Documentation] TC_MEC_SRV_UETAG_001_OK
... Check that the IUT responds with the information on a UE Identity tag when queried by a MEC Application ... Check that the IUT responds with the information on a UE Identity tag when queried by a MEC Application
... Reference ETSI GS MEC 014 V1.1.1, clause 7.3.3.1 ... Reference ETSI GS MEC 014 V1.1.1, clause 7.3.3.1
... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo ... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo
Get UE Identity Tag information Get UE Identity Tag information
Check HTTP Response Status Code Is 200 Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is ueIdentityTagInfo Check HTTP Response Body Json Schema Is ueIdentityTagInfo
Check Result Contains ${response['body']['ueIdentityTagInfo']['ueIdentityTags']} ueIdentityTag ${UE_IDENTITY_TAG} Check Result Contains ${response['body']['ueIdentityTagInfo']['ueIdentityTags']} ueIdentityTag ${UE_IDENTITY_TAG}
Request UE Identity Tag information using bad parameters Request UE Identity Tag information using bad parameters
[Documentation] TC_MEC_SRV_UETAG_001_BR [Documentation] TC_MEC_SRV_UETAG_001_BR
...@@ -44,13 +44,13 @@ Register an UE Identity Tag ...@@ -44,13 +44,13 @@ Register an UE Identity Tag
[Documentation] TP_MEC_SRV_UETAG_002_OK [Documentation] TP_MEC_SRV_UETAG_002_OK
... Check that the IUT registers a tag (representing a UE) or a list of tags when commanded by a MEC Application ... Check that the IUT registers a tag (representing a UE) or a list of tags when commanded by a MEC Application
... Reference ETSI GS MEC 014 V1.1.1, clause 7.3.3.2 ... Reference ETSI GS MEC 014 V1.1.1, clause 7.3.3.2
... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo ... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo
Update an UE Identity Tag {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG}","state":"REGISTERED"}]} Update an UE Identity Tag {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG}","state":"REGISTERED"}]}
Check HTTP Response Status Code Is 200 Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is UeIdentityTagInfo Check HTTP Response Body Json Schema Is UeIdentityTagInfo
Log Checking Postcondition Log Checking Postcondition
Check User Identity Tag state ${UE_IDENTITY_TAG} REGISTERED Check User Identity Tag state ${UE_IDENTITY_TAG} REGISTERED
Register an UE Identity Tag using invalid state Register an UE Identity Tag using invalid state
[Documentation] TP_MEC_SRV_UETAG_002_BR [Documentation] TP_MEC_SRV_UETAG_002_BR
...@@ -59,33 +59,34 @@ Register an UE Identity Tag using invalid state ...@@ -59,33 +59,34 @@ Register an UE Identity Tag using invalid state
... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo ... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo
Update an UE Identity Tag using invalid state {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG}","state":"INVALID_STATE"}]} Update an UE Identity Tag using invalid state {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG}","state":"INVALID_STATE"}]}
Check HTTP Response Status Code Is 400 Check HTTP Response Status Code Is 400
Unregister an UE Identity Tag already in unregistered state Unregister an UE Identity Tag already in unregistered state
[Documentation] TP_MEC_SRV_UETAG_002_PF [Documentation] TP_MEC_SRV_UETAG_002_PF
... Check that the IUT responds with ProblemDetails on information an invalid URI ... Check that the IUT responds with ProblemDetails on information an invalid URI
... Reference ETSI GS MEC 014 V1.1.1, clause 7.3.3.2 ... Reference ETSI GS MEC 014 V1.1.1, clause 7.3.3.2
... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo ... Reference https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo
Update an UE Identity Tag using a not applicable valid state {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG_INVALID_STATE}","state":"UNREGISTERED"}]} Update an UE Identity Tag using a not applicable valid state {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG_INVALID_STATE}","state":"UNREGISTERED"}]}
Check HTTP Response Status Code Is 412 Check HTTP Response Status Code Is 412
*** Keywords *** *** Keywords ***
Get UE Identity Tag information Get UE Identity Tag information
Should Be True ${PIC_MEC_PLAT} == '1' Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == '1' Should Be True ${PIC_SERVICES} == 1
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}"}
Set Headers {"Content-Length":"0"} Set Headers {"Content-Length":"0"}
Get /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info?ueIdentityTag=${UE_IDENTITY_TAG} Get /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info?ueIdentityTag=${UE_IDENTITY_TAG}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output}
Get UE Identity Tag information using bad parameters Get UE Identity Tag information using bad parameters
# FIXME Which IE protocol should be invalid? # FIXME Which IE protocol should be invalid?
Should Be True ${PIC_MEC_PLAT} == '1' Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == '1' Should Be True ${PIC_SERVICES} == 1
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}"}
...@@ -96,8 +97,8 @@ Get UE Identity Tag information using bad parameters ...@@ -96,8 +97,8 @@ Get UE Identity Tag information using bad parameters
Get UE Identity Tag information using non-existent application instance Get UE Identity Tag information using non-existent application instance
Should Be True ${PIC_MEC_PLAT} == '1' Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == '1' Should Be True ${PIC_SERVICES} == 1
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}"}
...@@ -105,27 +106,28 @@ Get UE Identity Tag information using non-existent application instance ...@@ -105,27 +106,28 @@ Get UE Identity Tag information using non-existent application instance
Get /exampleAPI/ui/v1/${NON_EXISTENT_APP_INSTANCE_ID}/ue_identity_tag_info?ueIdentityTag=${UE_IDENTITY_TAG} Get /exampleAPI/ui/v1/${NON_EXISTENT_APP_INSTANCE_ID}/ue_identity_tag_info?ueIdentityTag=${UE_IDENTITY_TAG}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
Update an UE Identity Tag Update an UE Identity Tag
[Arguments] ${content} [Arguments] ${content}
Should Be True ${PIC_MEC_PLAT} == '1' Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == '1' Should Be True ${PIC_SERVICES} == 1
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}"}
## As far as I understood, we are not checking preconditions. ## As far as I understood, we are not checking preconditions.
# Preamble: Check that the user tag is not registered # Preamble: Check that the user tag is not registered
## Check User Identity Tag state ${UE_IDENTITY_TAG} UNREGISTERED ## Check User Identity Tag state ${UE_IDENTITY_TAG} UNREGISTERED
log ${content}
Put /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info ${content} Put /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info ${content}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
Update an UE Identity Tag using invalid state Update an UE Identity Tag using invalid state
[Arguments] ${content} [Arguments] ${content}
Should Be True ${PIC_MEC_PLAT} == '1' Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == '1' Should Be True ${PIC_SERVICES} == 1
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}"}
...@@ -133,12 +135,12 @@ Update an UE Identity Tag using invalid state ...@@ -133,12 +135,12 @@ Update an UE Identity Tag using invalid state
Put /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info ${content} Put /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info ${content}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
Update an UE Identity Tag using a not applicable valid state
Update an UE Identity Tag using a not applicable valid state
[Arguments] ${content} [Arguments] ${content}
Should Be True ${PIC_MEC_PLAT} == '1' Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == '1' Should Be True ${PIC_SERVICES} == 1
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}"}
...@@ -146,6 +148,5 @@ Update an UE Identity Tag using a not applicable valid state ...@@ -146,6 +148,5 @@ Update an UE Identity Tag using a not applicable valid state
Put /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info ${content} Put /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info ${content}
${output}= Output response ${output}= Output response
Set Suite Variable ${response} ${output} Set Suite Variable ${response} ${output}
# TODO Check ProblemDetails # TODO Check ProblemDetails
\ No newline at end of file
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
${MEC-APP_SCHEMA} http ${MEC-APP_SCHEMA} http
#${MEC-APP_HOST} 172.28.4.87 #${MEC-APP_HOST} 172.28.4.87
#${MEC-APP_HOST} 127.0.0.1 #${MEC-APP_HOST} 127.0.0.1
${MEC-APP_HOST} 10.192.2.172 ${MEC-APP_HOST} 192.168.56.1
${MEC-APP_PORT} 8081 ${MEC-APP_PORT} 8081
${ZONE_ID} zone01 ${ZONE_ID} zone01
${APP_INSTANCE_ID} appInst01 ${APP_INSTANCE_ID} appInst01
......
...@@ -9,8 +9,8 @@ Library JSONSchemaLibrary schemas/ ...@@ -9,8 +9,8 @@ Library JSONSchemaLibrary schemas/
*** Keywords *** *** Keywords ***
Check User Identity Tag state Check User Identity Tag state
[Arguments] ${ue_identity_tag} ${state} [Arguments] ${ue_identity_tag} ${state}
Should Be True ${PIC_MEC_PLAT} == '1' Should Be True ${PIC_MEC_PLAT} 1
Should Be True ${PIC_SERVICES} == '1' Should Be True ${PIC_SERVICES} 1
Log Check ueIdentityTag state ${state} Log Check ueIdentityTag state ${state}
Set Headers {"Accept":"application/json"} Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"} Set Headers {"Content-Type":"application/json"}
......
...@@ -11,9 +11,9 @@ This file provides the list of the TODOs related to the STF 569. ...@@ -11,9 +11,9 @@ This file provides the list of the TODOs related to the STF 569.
### APPSUB ### APPSUB
### BWA ### BWA
### DNS ### DNS
### FAIS ### FAIS
...@@ -21,6 +21,13 @@ This file provides the list of the TODOs related to the STF 569. ...@@ -21,6 +21,13 @@ This file provides the list of the TODOs related to the STF 569.
### RNIS ### RNIS
Draft ETSI GS MEC 012 2.0.4
https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/master/Test%20Purposes/SRV/RNIS/RnisSpecificSubscription_BV.tplan2
https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/master/Test%20Purposes/SRV/RNIS/RnisSpecificSubscription_BV.tplan2
- TC_MEC_SRV_RNIS_011_OK <font color="color:green">To be tested</font>
### SAQ ### SAQ
### SRVSUB ### SRVSUB
...@@ -29,7 +36,7 @@ This file provides the list of the TODOs related to the STF 569. ...@@ -29,7 +36,7 @@ This file provides the list of the TODOs related to the STF 569.
### TRAF ### TRAF
### TRANS ### TRANS
### UEAREASUB ### UEAREASUB
...@@ -74,7 +81,7 @@ https://forge.etsi.org/gitlab/mec/MEC-tests/blob/master/Test%20Purposes/SRV/UELO ...@@ -74,7 +81,7 @@ https://forge.etsi.org/gitlab/mec/MEC-tests/blob/master/Test%20Purposes/SRV/UELO
### UETAG ### UETAG
ETSI GS MEC 014 V1.1.1 (2018-02) ETSI GS MEC 014 V1.1.1 (2018-02)
...@@ -99,4 +106,3 @@ https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/master/Test%20Purpo ...@@ -99,4 +106,3 @@ https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/master/Test%20Purpo
Draft ETSI GS MEC 013 V2.0.3 (2018-10) Draft ETSI GS MEC 013 V2.0.3 (2018-10)
https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UETRACKSUB/PlatUeTrackingSubscription.tplan2 https://forge.etsi.org/gitlab/mec/gs032p2-test-purposes/blob/remove-401s/Test%20Purposes/SRV/UETRACKSUB/PlatUeTrackingSubscription.tplan2
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment