Commit 15e1d8b6 authored by piscione's avatar piscione
Browse files

Update Robot tests of MEC015.

parent 523d9d5f
Pipeline #7007 passed with stage
in 0 seconds
......@@ -21,11 +21,10 @@ TP_MEC_MEC015_SRV_MTS_001_OK
Check HTTP Response Body Json Schema Is MtsCapabilityInfo
##GET on ${apiRoot}/${apiName}/${apiVersion}/mts_sessions
TP_MEC_MEC015_SRV_MTS_002_OK
[Documentation]
... Check that the IUT responds with the list of configured Multi-access Traffic Steering when queried by a MEC Application
... Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.1
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Retrieve MTS session list information
......@@ -37,35 +36,17 @@ TP_MEC_MEC015_SRV_MTS_002_OK
END
Should Be True ${passed}
TP_MEC_MEC015_SRV_MTS_003_OK
TP_MEC_MEC015_SRV_MTS_002_BR
[Documentation]
... Check that the IUT responds with a configured Multi-access Traffic Steering when queried by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.1
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Retrieve MTS session list information using filter ${CORRECT_FILTER} ${APP_INSTANCE_ID}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is MtsSessionInfo
FOR ${mstSessionInfo} IN @{response['body']}
${passed} Run Keyword And Return Status Should Be Equal As Strings ${mstSessionInfo['appInsId']} ${APP_INSTANCE_ID}
Exit For Loop If ${passed}
END
Should Be True ${passed}
TP_MEC_MEC015_SRV_MTS_003_BR
[Documentation]
... Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
... Check that the IUT responds with the list of configured Multi-access Traffic Steering when queried by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.1
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Retrieve MTS session list information using filter ${BAD_FILTER} ${APP_INSTANCE_ID}
Check HTTP Response Status Code Is 400
TP_MEC_MEC015_SRV_MTS_003_NF
TP_MEC_MEC015_SRV_MTS_002_NF
[Documentation]
... Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application
... Check that the IUT responds with the list of configured Multi-access Traffic Steering when queried by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.1
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Retrieve MTS session list information using filter ${CORRECT_FILTER} ${NOT_EXISTING_APP_INSTANCE_ID}
......@@ -73,34 +54,152 @@ TP_MEC_MEC015_SRV_MTS_003_NF
##POST on ${apiRoot}/${apiName}/${apiVersion}/mts_sessions
TP_MEC_MEC015_SRV_MTS_004_OK_01
TP_MEC_MEC015_SRV_MTS_003_OK_01
[Documentation]
... Check that the IUT creates a MTS session when queried by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.2
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
${path} Catenate SEPARATOR= jsons/ MtsSessionInfoApplicationSpecific.json
${body} Get File ${path}
${json_object}= Evaluate json.loads('''${body}''') json
Register MTS session ${body}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is MtsSessionInfo
Should Be Equal As Strings ${response['body']['appInsId']} ${json_object['appInsId']}
Should Be Equal As Strings ${response['body']['requestType']} ${json_object['requestType']}
Should Be Equal As Strings ${response['body']['qosD']} ${json_object['qosD']}
Should Be Equal As Strings ${response['body']['mtsMode']} ${json_object['mtsMode']}
Should Be Equal As Strings ${response['body']['trafficDirection']} ${json_object['trafficDirection']}
TP_MEC_MEC015_SRV_MTS_003_OK_02
[Documentation]
... Check that the IUT responds with a registration and initialisation approval for the requested MTS session requirements sent by a MEC Application
... Check that the IUT creates a MTS session when queried by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.2
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Register MTS session MtsSessionInfoApplicationSpecific.json
${path} Catenate SEPARATOR= jsons/ MtsSessionInfoSessionSpecific.json
${body} Get File ${path}
${json_object}= Evaluate json.loads('''${body}''') json
Register MTS session ${body}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is MtsSessionInfo
Should Be Equal As Strings ${response['body']['appInsId']} ${APP_INSTANCE_ID}
Should Be Equal As Strings ${response['body']['appInsId']} ${json_object['appInsId']}
Should Be Equal As Strings ${response['body']['requestType']} ${json_object['requestType']}
Should Be Equal As Strings ${response['body']['flowFilter']} ${json_object['flowFilter']}
Should Be Equal As Strings ${response['body']['qosD']} ${json_object['qosD']}
Should Be Equal As Strings ${response['body']['mtsMode']} ${json_object['mtsMode']}
Should Be Equal As Strings ${response['body']['trafficDirection']} ${json_object['trafficDirection']}
TP_MEC_MEC015_SRV_MTS_004_OK_02
TP_MEC_MEC015_SRV_MTS_003_BR
[Documentation]
... Check that the IUT responds with a registration and initialisation approval for the requested MTS session requirements sent by a MEC Application
... Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.2
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Register MTS session MtsSessionInfoSessionSpecific.json
${path} Catenate SEPARATOR= jsons/ MtsSessionInfoApplicationSpecific_BR.json
${body} Get File ${path}
${json_object}= Evaluate json.loads('''${body}''') json
Register MTS session ${body}
Check HTTP Response Status Code Is 400
Check HTTP Response Body Json Schema Is MtsSessionInfo
Should Be Equal As Strings ${response['body']['appInsId']} ${json_object['appInsId']}
Should Be Equal As Strings ${response['body']['requestType']} ${json_object['requestType']}
Should Be Equal As Strings ${response['body']['qosD']} ${json_object['qosD']}
Should Be Equal As Strings ${response['body']['mtsMode']} ${json_object['mtsMode']}
Should Be Equal As Strings ${response['body']['trafficDirection']} ${json_object['trafficDirection']}
##GET on ${apiRoot}/${apiName}/${apiVersion}/mts_sessions/{sessionId}
TP_MEC_MEC015_SRV_MTS_004_OK
[Documentation]
... Check that the IUT responds with a configured Multi-access Traffic Steering session when queried by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.1
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Retrieve single MTS session ${SESSION_ID}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is MtsSessionInfo
Should Be Equal As Strings ${response['body']['appInsId']} ${APP_INSTANCE_ID}
Should Be Equal As Strings ${response['body']['appInsId']} ${APP_INSTANCE_ID}
Should Be Equal As Strings ${response['body']['requestType']} ${REQUEST_TYPE_SESSION}
Should Be Equal As Strings ${response['body']['mtsMode']} ${MTS_LOW_MODE_COST}
Should Be Equal As Strings ${response['body']['trafficDirection']} ${TRAFFIC_DIRECTION_DL}
TP_MEC_MEC015_SRV_MTS_004_BR
[Documentation]
... Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.1
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Retrieve single MTS session ${WRONG_SESSION_ID}
Check HTTP Response Status Code Is 400
TP_MEC_MEC015_SRV_MTS_004_NF
[Documentation]
... Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.5.3.2
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.1
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Register MTS session wrong URI MtsSessionInfoSessionSpecific.json
Retrieve single MTS session ${NOT_EXISTING_SESSION_ID}
Check HTTP Response Status Code Is 404
##PUT on ${apiRoot}/${apiName}/${apiVersion}/mts_sessions/{sessionId}
TP_MEC_MEC015_SRV_MTS_005_OK
[Documentation]
... Check that the IUT updates the information about an individual MTS session when commanded by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.2
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
${path} Catenate SEPARATOR= jsons/ MtsSessionInfoApplicationSpecificUpdate.json
${body} Get File ${path}
${json_object}= Evaluate json.loads('''${body}''') json
Update requested requirements on the MTS Service ${SESSION_ID} ${body}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is MtsSessionInfo
Should Be Equal As Strings ${response['body']['appInsId']} ${json_object['appInsId']}
Should Be Equal As Strings ${response['body']['requestType']} ${json_object['requestType']}
Should Be Equal As Strings ${response['body']['qosD']} ${json_object['qosD']}
Should Be Equal As Strings ${response['body']['mtsMode']} ${json_object['mtsMode']}
Should Be Equal As Strings ${response['body']['trafficDirection']} ${json_object['trafficDirection']}
TP_MEC_MEC015_SRV_MTS_005_BR
[Documentation]
... Check that the IUT responds with an error when a request with incorrect parameters is sent by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.2
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
${path} Catenate SEPARATOR= jsons/ MtsSessionInfoApplicationSpecificUpdate_BR.json
${body} Get File ${path}
${json_object}= Evaluate json.loads('''${body}''') json
Update requested requirements on the MTS Service ${SESSION_ID} ${body}
Check HTTP Response Status Code Is 400
TP_MEC_MEC015_SRV_MTS_005_NF
[Documentation]
... Check that the IUT responds with an error when a request with an unknown resource URI is sent by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.2
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
${path} Catenate SEPARATOR= jsons/ MtsSessionInfoApplicationSpecificUpdate.json
${body} Get File ${path}
${json_object}= Evaluate json.loads('''${body}''') json
Update requested requirements on the MTS Service ${NOT_EXISTING_SESSION_ID} ${body}
Check HTTP Response Status Code Is 404
##DELETE on ${apiRoot}/${apiName}/${apiVersion}/mts_sessions/{sessionId}
TP_MEC_MEC015_SRV_MTS_006_OK
[Documentation]
... Check that the IUT deregisters a MTS session when commanded by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.3
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Unregister from the MTS Service ${SESSION_ID}
Check HTTP Response Status Code Is 204
##TP_MEC_MEC015_SRV_MTS_006_BR missing.
#See issues https://forge.etsi.org/rep/mec/gs032p2-test-purposes/issues/11 for further details.
TP_MEC_MEC015_SRV_MTS_006_NF
[Documentation]
... Check that the IUT deregisters a MTS session when commanded by a MEC Application
... ETSI GS MEC 015 V2.1.1, clause 9.4.3.3
... https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.yaml
Unregister from the MTS Service ${NOT_EXISTING_SESSION_ID}
Check HTTP Response Status Code Is 404
*** Keywords ***
Retrieve MTS capability information
Should Be True ${PIC_MEC_PLAT} == 1
......@@ -120,7 +219,7 @@ Retrieve MTS session list information
Set Headers {"Content-Type":"*/*"}
Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"}
Get ${apiRoot}/${apiName}/${apiVersion}/mts_session
Get ${apiRoot}/${apiName}/${apiVersion}/mts_sessions
${output}= Output response
Set Suite Variable ${response} ${output}
......@@ -133,21 +232,19 @@ Retrieve MTS session list information using filter
Set Headers {"Content-Type":"*/*"}
Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"}
Get ${apiRoot}/${apiName}/${apiVersion}/mts_session?${filter}=${value}
Get ${apiRoot}/${apiName}/${apiVersion}/mts_sessions?${filter}=${value}
${output}= Output response
Set Suite Variable ${response} ${output}
Register MTS session
[Arguments] ${content}
[Arguments] ${body}
Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"}
${path} Catenate SEPARATOR= jsons/ ${content}
${body} Get File ${path}
POST ${apiRoot}/${apiName}/${apiVersion}/mts_session ${body}
POST ${apiRoot}/${apiName}/${apiVersion}/mts_sessions ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
......@@ -162,6 +259,40 @@ Register MTS session wrong URI
Set Headers {"Content-Length":"0"}
${path} Catenate SEPARATOR= jsons/ ${content}
${body} Get File ${path}
POST ${apiRoot}/${apiName}/v0/mts_session ${body}
POST ${apiRoot}/${apiName}/v0/mts_sessions ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
Retrieve single MTS session
[Arguments] ${sessionId}
Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"*/*"}
Set Headers {"Authorization":"${TOKEN}"}
GET ${apiRoot}/${apiName}/${apiVersion}/mts_sessions/${sessionId}
${output}= Output response
Set Suite Variable ${response} ${output}
Update requested requirements on the MTS Service
[Arguments] ${sessionId} ${body}
Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"*/*"}
Set Headers {"Authorization":"${TOKEN}"}
PUT ${apiRoot}/${apiName}/${apiVersion}/mts_sessions/${sessionId} ${body}
${output}= Output response
Set Suite Variable ${response} ${output}
Unregister from the MTS Service
[Arguments] ${sessionId}
Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == 1
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"*/*"}
Set Headers {"Authorization":"${TOKEN}"}
LOG ${sessionId}
DELETE ${apiRoot}/${apiName}/${apiVersion}/mts_sessions/${sessionId}
${output}= Output response
Set Suite Variable ${response} ${output}
\ No newline at end of file
......@@ -13,4 +13,12 @@ ${apiVersion} v1
${APP_INSTANCE_ID} appInstId01
${NOT_EXISTING_APP_INSTANCE_ID} NOT_EXISTING_APP_INS_ID
${CORRECT_FILTER} app_instance_id
${BAD_FILTER} app_id
\ No newline at end of file
${BAD_FILTER} appInsId
${SESSION_ID} 1
${WRONG_SESSION_ID} WRONG_SESSION_ID
${NOT_EXISTING_SESSION_ID} NOT_EXISTING_SESSION_ID
${REQUEST_TYPE_SESSION} 0
${MTS_LOW_MODE_COST} 0
${TRAFFIC_DIRECTION_DL} 00
......@@ -6,15 +6,6 @@
},
"mtsMode": 0,
"trafficDirection": "00",
"flowFilter": [{
"dstPort": [8081],
"protocol": 41,
"sourcePort": [8081],
"dstIp": "10.10.0.10",
"dscp": 40,
"sourceIp": "10.10.0.30"
}
],
"qosD":{
"minTpt":10
}
......
{
"appInsId": "myAppInstId",
"requestType": 0,
"qosD": {
"minTpt": 30
},
"mtsMode": 0,
"trafficDirection": "00",
"qosD":{
"minTpt":10
}
}
\ No newline at end of file
{
"appInsId": "myAppInstId",
"requestType": 0,
"qosD": {
"minTpt": 30
},
"mtsMode": 0,
"trafficDirection": "00",
"flowFilter": [{
"dstPort": [8081],
"protocol": 41,
"sourcePort": [8081],
"dstIp": "10.10.0.10",
"dscp": 40,
"sourceIp": "10.10.0.30"
}
],
"qosD":{
"minTpt":10
}
}
\ No newline at end of file
{
"appInsId": "myAppInstId",
"requestType": 0,
"qosD": {
"minTpt": 30
},
"mtsMode": 0,
"trafficDirection": "00",
"flowFilter": [{
"dstPort": [8081],
"protocol": 41,
"sourcePort": [8081],
"dstIp": "10.10.0.10",
"dscp": 40,
"sourceIp": "10.10.0.30"
}
],
"qosD":{
"minTpt":10
}
}
\ No newline at end of file
''[Documentation] robot --outputdir ../../outputs ./PlatBandwidthManager.robot
... Test Suite to validate Bandwidth Management API (BWA) operations.
*** Settings ***
Resource environment/variables.txt
Resource ../../pics.txt
Resource ../../GenericKeywords.robot
Library REST ${SCHEMA}://${HOST}:${PORT} ssl_verify=false
Library OperatingSystem
*** Test Cases ***
Request the list of configured bandwidth allocations
[Documentation] TC_MEC_SRV_BWA_001_OK
... Check that the IUT responds with the list of configured bandwidth allocations when queried by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.4.3.1
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Retrieve the list of configured bandwidth allocations ${APP_INSTANCE_ID}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is BwInfo
Check AppInstanceId ${APP_INSTANCE_ID}
Request the list of configured bandwidth allocations with wrong app instance id
[Documentation] TC_MEC_SRV_BWA_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 015 V1.1.1, clause 8.4.3.1
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Retrieve the list of configured bandwidth allocations ${NON_EXISTENT_APP_INSTANCE_ID}
Check HTTP Response Status Code Is 400
#Check ProblemDetails 400
Request to register Bandwidth Management Services
[Documentation] TC_MEC_SRV_BWA_002_OK
... Check that the IUT responds with a registration and initialisation approval for the requested bandwidth requirements sent by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.4.3.4
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Registration for bandwidth services ${APP_INSTANCE_ID} BwInfo
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is BwInfo
Check AppInstanceId ${APP_INSTANCE_ID}
Request to register Bandwidth Management Services using wrong parameters
[Documentation] TC_MEC_SRV_BWA_002_BR
... Check that the IUT responds with a registration and initialisation approval for the requested bandwidth requirements sent by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.4.3.4
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Registration for bandwidth services ${APP_INSTANCE_ID} BwInfoError
Check HTTP Response Status Code Is 400
Request for a bandwidth allocation
[Documentation] TC_MEC_SRV_BWA_003_OK
... Check that the IUT responds with the configured bandwidth allocation when queried by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.1
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Get a bandwidth allocation ${ALLOCATION_ID}
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is BwInfo
Check AppInstanceId ${APP_INSTANCE_ID}
Request for a bandwidth allocation using wrong parameters
[Documentation] TC_MEC_SRV_BWA_003_NF
... Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.1
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Get a bandwidth allocation ${NON_EXISTENT_ALLOCATION_ID}
Check HTTP Response Status Code Is 404
Updates the requested bandwidth requirements
[Documentation] TC_MEC_SRV_BWA_004_OK
... Check that the IUT updates the requested bandwidth requirements when commanded by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.2
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
# Preamble
Register Bandwidth Management Service BwInfo
# Test body
Update a bandwidth allocation ${ALLOCATION_ID} BwInfoUpdate
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is BwInfo
Check AppInstanceId ${APP_INSTANCE_ID}
# Postamble
Unregister Bandwidth Management Service ${ALLOCATION_ID}
Updates the requested bandwidth requirements using wrong allocationDirection
[Documentation] TC_MEC_SRV_BWA_004_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 015 V1.1.1, clause 8.3.3.2
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
# Preamble
Register Bandwidth Management Service BwInfo
# Test body
Update a bandwidth allocation ${ALLOCATION_ID} BwInfoError
Check HTTP Response Status Code Is 400
# Postamble
Unregister Bandwidth Management Service ${ALLOCATION_ID}
Updates the requested bandwidth requirements using wrong allocationId
[Documentation] TC_MEC_SRV_BWA_004_NF
... Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.2
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Update a bandwidth allocation ${NON_EXISTENT_ALLOCATION_ID} BwInfoUpdate
Check HTTP Response Status Code Is 404
Check ProblemDetails 404
Updates the requested bandwidth requirements using wrong parameters
[Documentation] TC_MEC_SRV_BWA_004_PF
... Check that the IUT responds with an error when a request sent by a MEC Application doesn't comply with a required condition
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.2
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
# TODO Application doesn't comply with a required condition???
# Preamble
Register Bandwidth Management Service BwInfo
# Test body
Update a bandwidth allocation with invalid ETAG ${ALLOCATION_ID} BwInfoUpdate
Check HTTP Response Status Code Is 412
# Postamble
Unregister Bandwidth Management Service ${ALLOCATION_ID}
Request for deltas changes
[Documentation] TC_MEC_SRV_BWA_005_OK
... Check that the IUT when provided with just the changes (deltas) updates the requested bandwidth requirements when commanded by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.3
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
# Preamble
Register Bandwidth Management Service BwInfo
# Test body
Request a deltas changes ${ALLOCATION_ID} BwInfoUpdateDelta
Check HTTP Response Status Code Is 200
Check HTTP Response Body Json Schema Is bwInfo
Check AppInstanceId ${APP_INSTANCE_ID}
# Postamble
Unregister Bandwidth Management Service ${ALLOCATION_ID}
Request for deltas changes using invalid requestType
[Documentation] TC_MEC_SRV_BWA_005_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 015 V1.1.1, clause 8.3.3.3
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
# Preamble
Register Bandwidth Management Service BwInfo
# Test body
Request a deltas changes ${ALLOCATION_ID} BwInfoUpdateDeltaError
Check HTTP Response Status Code Is 400
# Postamble
Unregister Bandwidth Management Service ${ALLOCATION_ID}
Request for deltas changes using an unknown URI
[Documentation] TC_MEC_SRV_BWA_005_NF
... Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.3
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
Request a deltas changes ${NON_EXISTENT_ALLOCATION_ID} BwInfoUpdateDelta
Check HTTP Response Status Code Is 404
Request for deltas changes using wrong parameters
[Documentation] TC_MEC_SRV_BWA_005_PF
... Check that the IUT responds with an error when a request sent by a MEC Application doesn't comply with a required condition
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.3
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
# Preamble
Register Bandwidth Management Service BwInfo
# Test body
Request a deltas changes with invalid ETAG ${ALLOCATION_ID} BwInfoUpdateDelta
Check HTTP Response Status Code Is 412
# Postamble
Unregister Bandwidth Management Service ${ALLOCATION_ID}
Request to unregister bandwidth Management Service
[Documentation] TC_MEC_SRV_BWA_006_OK
... Check that the IUT unregisters from the Bandwidth Management Service when commanded by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.5
... Reference https://forge.etsi.org/rep/mec/gs015-bandwith-mgmt-api/blob/master/BwManagementApi.json
# Preamble
Should Be True ${PIC_MEC_PLAT} == 1
Should Be True ${PIC_SERVICES} == 1
Register Bandwidth Management Service BwInfo
# Test body
Set Headers {"Accept":"application/json"}
Set Headers {"Content-Type":"application/json"}
Set Headers {"Authorization":"${TOKEN}"}
Set Headers {"Content-Length":"0"}
Delete ${apiRoot}/${apiName}/${apiVersion}/bw_allocations/${ALLOCATION_ID}
${output}= Output response
Set Suite Variable ${response} ${output}
Check HTTP Response Status Code Is 204
Request to unregister bandwidth Management Service with wrong parameters
[Documentation] TC_MEC_SRV_BWA_006_NF
... Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
... Reference ETSI GS MEC 015 V1.1.1, clause 8.3.3.5