Newer
Older
''[Documentation] robot --outputdir ./outputs ./SRV/UETAG/PlatUeIdentity.robot
... Test Suite to validate UE Identity Tag (UETAG) operations.
*** Settings ***
Resource ../../environment/variables.txt
Resource ../../resources/GenericKeywords.robot
Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_verify=false
Default Tags TC_MEC_SRV_UETAG
*** Variables ***
*** Test Cases ***
[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
# 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
[Tags] TP_MEC_SRV_UETAG_001_OK TP_MEC_SRV_UETAG
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"Basic YWxhZGRpbjpvcGVuc2VzYW1l"}
Set Headers {"Content-Length":"0"}
Get /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info?ueIdentityTag=${UE_IDENTITY_TAG}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is ueIdentityTagInfo
#Log Check ueIdentityTagsList for ${UE_IDENTITY_TAG} element
Should Be Present In Json List ${response['body']['ueIdentityTagInfo']['ueIdentityTags']} ueIdentityTag ${UE_IDENTITY_TAG}
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
Bad Request error on UE Identity Tag registration
# FIXME Which IE protocol should be invalid?
[Documentation] TC_MEC_SRV_UETAG_001_BR
# Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
# 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
[Tags] TP_MEC_SRV_UETAG_001_BR TP_MEC_SRV_UETAG
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"Basic YWxhZGRpbjpvcGVuc2VzYW1l"}
Set Headers {"Content-Length":"0"}
Get /exampleAPI/ui/v1/${APP_INSTANCE_ID}/invalid/ue_identity_tag_info?ueIdentityTag=${UE_IDENTITY_TAG}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is 400
Not Found error on UE Identity Tag registration
[Documentation] TC_MEC_SRV_UETAG_001_NF
# Check that the IUT responds with an error when a request for an URI that cannot be mapped to a valid resource URI is sent by a MEC Application
# 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
[Tags] TP_MEC_SRV_UETAG_001_NF TP_MEC_SRV_UETAG
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"Basic YWxhZGRpbjpvcGVuc2VzYW1l"}
Set Headers {"Content-Length":"0"}
Get /exampleAPI/ui/v1/${NON_EXISTENT_APP_INSTANCE_ID}/ue_identity_tag_info?ueIdentityTag=${UE_IDENTITY_TAG}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is 404
Register a UE Identity Tag
[Documentation] TC_MEC_PLAT_UETAG_002_OK
# 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 https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo
[Tags] TP_MEC_SRV_UETAG_002_OK TP_MEC_SRV_UETAG
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"Basic YWxhZGRpbjpvcGVuc2VzYW1l"}
# Preamble: Check that the user tag is not registered
Check User Identity Tag state ${UE_IDENTITY_TAG} UNREGISTERED
# Test Body: Register the tag user and check that the IUT has registered the tag user
Post /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG}","state":"REGISTERED"}]}
${output}= Output response
Set Suite Variable ${response} ${output}
Check User Identity Tag state ${UE_IDENTITY_TAG} REGISTERED
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
118
119
120
121
122
123
124
125
Bad Request error on invalid state
[Documentation] TC_MEC_PLAT_UETAG_002_BR
# Check that the IUT responds with an error when an unauthorised request is sent by a MEC Application
# 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
[Tags] TP_MEC_SRV_UETAG_002_BR TP_MEC_SRV_UETAG
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"Basic YWxhZGRpbjpvcGVuc2VzYW1l"}
# Test Body: Register the tag user and check that the IUT has registered the tag user
Post /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG}","state":"INVALID_STATE"}]}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is 400
Precondition Failed error on invalid state
[Documentation] TC_MEC_PLAT_UETAG_002_PF
# 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 https://forge.etsi.org/gitlab/mec/gs014-ue-identity-api/blob/master/UEidentityAPI.yaml#/definitions/UeIdentityTagInfo
[Tags] TP_MEC_SRV_UETAG_002_PF TP_MEC_SRV_UETAG
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"Basic YWxhZGRpbjpvcGVuc2VzYW1l"}
# Test Body: Register the tag user and check that the IUT has registered the tag user
Post /exampleAPI/ui/v1/${APP_INSTANCE_ID}/ue_identity_tag_info {"ueIdentityTags":[{"ueIdentityTag":"${UE_IDENTITY_TAG_INVALID_STATE}","state":"UNREGISTERED"}]}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is 412
# TODO Check ProblemDetails