${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
AssocStaSubscription.json
Creating a new subscription
Logs the given message with the given level.
Creating a new subscription
{"Content-Type":"application/json"}
settings
*Sets new request headers or updates the existing.*
{"Authorization":"${TOKEN}"}
settings
*Sets new request headers or updates the existing.*
${path}
SEPARATOR=
jsons/
${content}
Catenates the given items together and returns the resulted string.
${path} = jsons/AssocStaSubscription.json
${body}
${path}
Returns the contents of a specified file.
Getting file '<a href="file://C:\Users\pietr\Desktop\gs032p3-robot-test-suite\MEC028\WAI\SUB\jsons\AssocStaSubscription.json">C:\Users\pietr\Desktop\gs032p3-robot-test-suite\MEC028\WAI\SUB\jsons\AssocStaSubscription.json</a>'.
${body} = {
"apId": {
"macId": "macId01"
},
"callbackReference": "http://callback.uri/1",
"subscriptionType": "AssocStaSubscription"
}
${apiRoot}/${apiName}/${apiVersion}/subscriptions
${body}
http
*Sends a POST request to the endpoint.*
${body}
Logs the given message with the given level.
{
"apId": {
"macId": "macId01"
},
"callbackReference": "http://callback.uri/1",
"subscriptionType": "AssocStaSubscription"
}
${output}
response
I/O
*Outputs JSON to terminal or a file.*
{
"seconds": 0.016300000000000002,
"status": 201,
"body": {
"_links": {
"self": {
"href": "/wai/v1/subscriptions/1"
}
},
"apId": {
"macId": "macId01"
},
"callbackReference": "http://callback.uri/1",
"subscriptionType": "AssocStaSubscription"
},
"headers": {
"Content-Type": "application/json; charset=utf-8",
"Location": "/wai/v1/subscriptions/1",
"Content-Length": "222",
"Date": "Thu, 06 May 2021 12:55:53 GMT",
"Connection": "keep-alive",
"Keep-Alive": "timeout=5"
}
}
${output} = {'seconds': 0.016300000000000002, 'status': 201, 'body': {'_links': {'self': {'href': '/wai/v1/subscriptions/1'}}, 'apId': {'macId': 'macId01'}, 'callbackReference': 'http://callback.uri/1', 'subscrip...
${response}
${output}
Makes a variable available everywhere within the scope of the current suite.
${response} = {'seconds': 0.016300000000000002, 'status': 201, 'body': {'_links': {'self': {'href': '/wai/v1/subscriptions/1'}}, 'apId': {'macId': 'macId01'}, 'callbackReference': 'http://callback.uri/1', 'subscrip...
201
${status}
${expected_status}
Converts the given item to an integer number.
${status} = 201
${response['status']}
${status}
Fails if the given objects are unequal.
Status code validated
Logs the given message with the given level.
Status code validated
AssocStaSubscription
${response['headers']['Content-Type']}
application/json
Fails if ``container`` does not contain ``item`` one or more times.
${schema}
SEPARATOR=
${input}
.schema.json
Catenates the given items together and returns the resulted string.
${schema} = AssocStaSubscription.schema.json
${schema}
${response['body']}
Validates the sample JSON against the given schema.
Json Schema Validation OK
Logs the given message with the given level.
Json Schema Validation OK
${response['body']['subscriptionType']}
${SUB_TYPE}
Fails if objects are unequal after converting them to strings.
${response['body']['_links']['self']['href']}
${HREF}
Fails if objects are unequal after converting them to strings.
${response['headers']['Location']}
${HREF}
Fails if objects are unequal after converting them to strings.
Check that the IUT responds with a Notification Subscription
Reference "ETSI GS MEC 028 2.1.1, clause 7.5.3.4
https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.1.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
AssocStaSubscription_BR.json
Creating a new subscription
Logs the given message with the given level.
Creating a new subscription
{"Content-Type":"application/json"}
settings
*Sets new request headers or updates the existing.*
{"Authorization":"${TOKEN}"}
settings
*Sets new request headers or updates the existing.*
${path}
SEPARATOR=
jsons/
${content}
Catenates the given items together and returns the resulted string.
${path} = jsons/AssocStaSubscription_BR.json
${body}
${path}
Returns the contents of a specified file.
Getting file '<a href="file://C:\Users\pietr\Desktop\gs032p3-robot-test-suite\MEC028\WAI\SUB\jsons\AssocStaSubscription_BR.json">C:\Users\pietr\Desktop\gs032p3-robot-test-suite\MEC028\WAI\SUB\jsons\AssocStaSubscription_BR.json</a>'.
${body} = {
"_links":{
"href":""
},
"apId": {
"macId": "macId01"
},
"callbackReference": "http://callback.uri/1",
"subscriptionType": "INVALID_VALUE"
}
${apiRoot}/${apiName}/${apiVersion}/subscriptions
${body}
http
*Sends a POST request to the endpoint.*
${body}
Logs the given message with the given level.
{
"_links":{
"href":""
},
"apId": {
"macId": "macId01"
},
"callbackReference": "http://callback.uri/1",
"subscriptionType": "INVALID_VALUE"
}
${output}
response
I/O
*Outputs JSON to terminal or a file.*
{
"seconds": 0.005856,
"status": 400,
"body": "",
"headers": {
"Content-Type": "application/problem+json; charset=utf-8",
"Content-Length": "0",
"Date": "Thu, 06 May 2021 12:55:53 GMT",
"Connection": "keep-alive",
"Keep-Alive": "timeout=5"
}
}
${output} = {'seconds': 0.005856, 'status': 400, 'body': '', 'headers': {'Content-Type': 'application/problem+json; charset=utf-8', 'Content-Length': '0', 'Date': 'Thu, 06 May 2021 12:55:53 GMT', 'Connection': 'k...
${response}
${output}
Makes a variable available everywhere within the scope of the current suite.
${response} = {'seconds': 0.005856, 'status': 400, 'body': '', 'headers': {'Content-Type': 'application/problem+json; charset=utf-8', 'Content-Length': '0', 'Date': 'Thu, 06 May 2021 12:55:53 GMT', 'Connection': 'k...
400
${status}
${expected_status}
Converts the given item to an integer number.
${status} = 400
${response['status']}
${status}
Fails if the given objects are unequal.
Status code validated
Logs the given message with the given level.
Status code validated
Check that the IUT responds with an error when an invalid Subscription request is sent
ETSI GS MEC 028 2.1.1, clause 7.5.3.4
https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.1.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
AssocStaSubscription.json
Creating a new subscription
Logs the given message with the given level.
Creating a new subscription
{"Content-Type":"application/json"}
settings
*Sets new request headers or updates the existing.*
{"Authorization":"${TOKEN}"}
settings
*Sets new request headers or updates the existing.*
${path}
SEPARATOR=
jsons/
${content}
Catenates the given items together and returns the resulted string.
${path} = jsons/AssocStaSubscription.json
${body}
${path}
Returns the contents of a specified file.
Getting file '<a href="file://C:\Users\pietr\Desktop\gs032p3-robot-test-suite\MEC028\WAI\SUB\jsons\AssocStaSubscription.json">C:\Users\pietr\Desktop\gs032p3-robot-test-suite\MEC028\WAI\SUB\jsons\AssocStaSubscription.json</a>'.
${body} = {
"apId": {
"macId": "macId01"
},
"callbackReference": "http://callback.uri/1",
"subscriptionType": "AssocStaSubscription"
}
${apiRoot}/${apiName}/${apiVersion}/subscriptions_INVALID_URI
${body}
http
*Sends a POST request to the endpoint.*
Response body content is not JSON. Content-Type is: text/html; charset=utf-8
${output}
response
I/O
*Outputs JSON to terminal or a file.*
{
"seconds": 0.0030830000000000002,
"status": 404,
"body": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n</head>\n<body>\n<pre>Cannot POST /wai/v1/subscriptions_INVALID_URI</pre>\n</body>\n</html>\n",
"headers": {
"Content-Security-Policy": "default-src 'none'",
"X-Content-Type-Options": "nosniff",
"Content-Type": "text/html; charset=utf-8",
"Content-Length": "172",
"Date": "Thu, 06 May 2021 12:55:53 GMT",
"Connection": "keep-alive",
"Keep-Alive": "timeout=5"
}
}
${output} = {'seconds': 0.0030830000000000002, 'status': 404, 'body': '<!DOCTYPE html>\n<html lang="en">\n<head>\n<meta charset="utf-8">\n<title>Error</title>\n</head>\n<body>\n<pre>Cannot POST /wai/v1/subscripti...
${response}
${output}
Makes a variable available everywhere within the scope of the current suite.
${response} = {'seconds': 0.0030830000000000002, 'status': 404, 'body': '<!DOCTYPE html>\n<html lang="en">\n<head>\n<meta charset="utf-8">\n<title>Error</title>\n</head>\n<body>\n<pre>Cannot POST /wai/v1/subscripti...
404
${status}
${expected_status}
Converts the given item to an integer number.
${status} = 404
${response['status']}
${status}
Fails if the given objects are unequal.
Status code validated
Logs the given message with the given level.
Status code validated
Check that the IUT responds with an error when a request with not existing parameters is sent
Reference "ETSI GS MEC 028 2.1.1, clause 7.5.3.1
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
${SUB_FILTER}
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
{"Content-Type":"application/json"}
settings
*Sets new request headers or updates the existing.*
{"Authorization":"${TOKEN}"}
settings
*Sets new request headers or updates the existing.*
${apiRoot}/${apiName}/${apiVersion}/subscriptions?subscription_type=${subscription_type}
http
*Sends a GET request to the endpoint.*
${output}
response
I/O
*Outputs JSON to terminal or a file.*
{
"seconds": 0.005093,
"status": 200,
"body": {
"_links": {
"self": {
"href": "/wai/v1/subscriptions/1"
}
},
"staDataRateSubscription": [],
"assocStaSubscription": [
{
"subscriptionType": "AssocStaSubscription",
"callbackReference": "http://callback/uri",
"apId": {
"macId": "macId01"
},
"_links": {
"self": {
"href": "/wai/v1/subscriptions/1"
}
}
}
]
},
"headers": {
"Content-Type": "application/json; charset=utf-8",
"Content-Length": "361",
"Date": "Thu, 06 May 2021 12:55:53 GMT",
"Connection": "keep-alive",
"Keep-Alive": "timeout=5"
}
}
${output} = {'seconds': 0.005093, 'status': 200, 'body': {'_links': {'self': {'href': '/wai/v1/subscriptions/1'}}, 'staDataRateSubscription': [], 'assocStaSubscription': [{'subscriptionType': 'AssocStaSubscriptio...
${response}
${output}
Makes a variable available everywhere within the scope of the current suite.
${response} = {'seconds': 0.005093, 'status': 200, 'body': {'_links': {'self': {'href': '/wai/v1/subscriptions/1'}}, 'staDataRateSubscription': [], 'assocStaSubscription': [{'subscriptionType': 'AssocStaSubscriptio...
200
${status}
${expected_status}
Converts the given item to an integer number.
${status} = 200
${response['status']}
${status}
Fails if the given objects are unequal.
Status code validated
Logs the given message with the given level.
Status code validated
SubscriptionLinkList
${response['headers']['Content-Type']}
application/json
Fails if ``container`` does not contain ``item`` one or more times.
${schema}
SEPARATOR=
${input}
.schema.json
Catenates the given items together and returns the resulted string.
${schema} = SubscriptionLinkList.schema.json
${schema}
${response['body']}
Validates the sample JSON against the given schema.
Json Schema Validation OK
Logs the given message with the given level.
Json Schema Validation OK
${assocStaSub}
@{response['body']['assocStaSubscription']}
{'subscriptionType': 'AssocStaSubscription', 'callbackReference': 'http://callback/uri', 'apId': {'macId': 'macId01'}, '_links': {'self': {'href': '/wai/v1/subscriptions/1'}}}
${passed}
Should Be Equal As Strings
${assocStaSub['_links']['self']['href']}
${HREF}
Runs the given keyword with given arguments and returns the status as a Boolean value.
${assocStaSub['_links']['self']['href']}
${HREF}
Fails if objects are unequal after converting them to strings.
${passed} = True
${passed}
Stops executing the enclosing for loop if the ``condition`` is true.
Exiting for loop altogether.
Check that the IUT responds with the requested list of subscription
Reference "ETSI GS MEC 028 2.1.1, clause 7.5.3.1
https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.1.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
${SUB_FILTER}
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
{"Content-Type":"application/json"}
settings
*Sets new request headers or updates the existing.*
{"Authorization":"${TOKEN}"}
settings
*Sets new request headers or updates the existing.*
${apiRoot}/${apiName}/${apiVersion}/subscriptions?subscription_type=${subscription_type}
http
*Sends a GET request to the endpoint.*
${output}
response
I/O
*Outputs JSON to terminal or a file.*
{
"seconds": 0.005634999999999999,
"status": 200,
"body": {
"_links": {
"self": {
"href": "/wai/v1/subscriptions/1"
}
},
"staDataRateSubscription": [],
"assocStaSubscription": [
{
"subscriptionType": "AssocStaSubscription",
"callbackReference": "http://callback/uri",
"apId": {
"macId": "macId01"
},
"_links": {
"self": {
"href": "/wai/v1/subscriptions/1"
}
}
}
]
},
"headers": {
"Content-Type": "application/json; charset=utf-8",
"Content-Length": "361",
"Date": "Thu, 06 May 2021 12:55:53 GMT",
"Connection": "keep-alive",
"Keep-Alive": "timeout=5"
}
}
${output} = {'seconds': 0.005634999999999999, 'status': 200, 'body': {'_links': {'self': {'href': '/wai/v1/subscriptions/1'}}, 'staDataRateSubscription': [], 'assocStaSubscription': [{'subscriptionType': 'AssocSt...
${response}
${output}
Makes a variable available everywhere within the scope of the current suite.
${response} = {'seconds': 0.005634999999999999, 'status': 200, 'body': {'_links': {'self': {'href': '/wai/v1/subscriptions/1'}}, 'staDataRateSubscription': [], 'assocStaSubscription': [{'subscriptionType': 'AssocSt...
200
${status}
${expected_status}
Converts the given item to an integer number.
${status} = 200
${response['status']}
${status}
Fails if the given objects are unequal.
Status code validated
Logs the given message with the given level.
Status code validated
SubscriptionLinkList
${response['headers']['Content-Type']}
application/json
Fails if ``container`` does not contain ``item`` one or more times.
${schema}
SEPARATOR=
${input}
.schema.json
Catenates the given items together and returns the resulted string.
${schema} = SubscriptionLinkList.schema.json
${schema}
${response['body']}
Validates the sample JSON against the given schema.
Json Schema Validation OK
Logs the given message with the given level.
Json Schema Validation OK
${response['body']['_links']['self']['href']}
${HREF}
Fails if objects are unequal after converting them to strings.
Check that the IUT responds with the requested list of subscription
Reference "ETSI GS MEC 028 2.1.1, clause 7.5.3.1
https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.1.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
${INVALID_SUB_FILTER}
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
{"Content-Type":"application/json"}
settings
*Sets new request headers or updates the existing.*
{"Authorization":"${TOKEN}"}
settings
*Sets new request headers or updates the existing.*
${apiRoot}/${apiName}/${apiVersion}/subscriptions?subscription_type=${subscription_type}
http
*Sends a GET request to the endpoint.*
${output}
response
I/O
*Outputs JSON to terminal or a file.*
{
"seconds": 0.005876999999999999,
"status": 400,
"body": "",
"headers": {
"Content-Type": "application/problem+json; charset=utf-8",
"Content-Length": "0",
"Date": "Thu, 06 May 2021 12:55:53 GMT",
"Connection": "keep-alive",
"Keep-Alive": "timeout=5"
}
}
${output} = {'seconds': 0.005876999999999999, 'status': 400, 'body': '', 'headers': {'Content-Type': 'application/problem+json; charset=utf-8', 'Content-Length': '0', 'Date': 'Thu, 06 May 2021 12:55:53 GMT', 'Con...
${response}
${output}
Makes a variable available everywhere within the scope of the current suite.
${response} = {'seconds': 0.005876999999999999, 'status': 400, 'body': '', 'headers': {'Content-Type': 'application/problem+json; charset=utf-8', 'Content-Length': '0', 'Date': 'Thu, 06 May 2021 12:55:53 GMT', 'Con...
400
${status}
${expected_status}
Converts the given item to an integer number.
${status} = 400
${response['status']}
${status}
Fails if the given objects are unequal.
Status code validated
Logs the given message with the given level.
Status code validated
Check that the IUT responds with the requested list of subscription
Reference "ETSI GS MEC 028 2.1.1, clause 7.5.3.1
https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.1.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription
${PIC_MEC_SYSTEM} == 1
Fails if the given condition is not true.
${PIC_SERVICES} == 1
Fails if the given condition is not true.
{"Content-Type":"application/json"}
settings
*Sets new request headers or updates the existing.*
{"Authorization":"${TOKEN}"}
settings
*Sets new request headers or updates the existing.*
${apiRoot}/${apiName}/${apiVersion}/subscriptions_INVALID_URI
http
*Sends a GET request to the endpoint.*
Response body content is not JSON. Content-Type is: text/html; charset=utf-8
${output}
response
I/O
*Outputs JSON to terminal or a file.*
{
"seconds": 0.0049169999999999995,
"status": 404,
"body": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n<meta charset=\"utf-8\">\n<title>Error</title>\n</head>\n<body>\n<pre>Cannot GET /wai/v1/subscriptions_INVALID_URI</pre>\n</body>\n</html>\n",
"headers": {
"Content-Security-Policy": "default-src 'none'",
"X-Content-Type-Options": "nosniff",
"Content-Type": "text/html; charset=utf-8",
"Content-Length": "171",
"Date": "Thu, 06 May 2021 12:55:53 GMT",
"Connection": "keep-alive",
"Keep-Alive": "timeout=5"
}
}
${output} = {'seconds': 0.0049169999999999995, 'status': 404, 'body': '<!DOCTYPE html>\n<html lang="en">\n<head>\n<meta charset="utf-8">\n<title>Error</title>\n</head>\n<body>\n<pre>Cannot GET /wai/v1/subscriptio...
${response}
${output}
Makes a variable available everywhere within the scope of the current suite.
${response} = {'seconds': 0.0049169999999999995, 'status': 404, 'body': '<!DOCTYPE html>\n<html lang="en">\n<head>\n<meta charset="utf-8">\n<title>Error</title>\n</head>\n<body>\n<pre>Cannot GET /wai/v1/subscriptio...
404
${status}
${expected_status}
Converts the given item to an integer number.
${status} = 404
${response['status']}
${status}
Fails if the given objects are unequal.
Status code validated
Logs the given message with the given level.
Status code validated
Check that the IUT responds with an error when a request with not existing parameters is sent
Reference "ETSI GS MEC 028 2.1.1, clause 7.5.3.1
https://forge.etsi.org/rep/mec/gs028-wai-api/blob/v2.1.1/WlanInformationApi.yaml#/schemas/AssocStaSubscription
All Tests
WaiSubscription
Response body content is not JSON. Content-Type is: text/html; charset=utf-8
Response body content is not JSON. Content-Type is: text/html; charset=utf-8