From 2d37a28ed7b4dbfbf34cc28020cabe6b18e0e450 Mon Sep 17 00:00:00 2001 From: garciay Date: Mon, 16 Sep 2019 09:24:23 +0200 Subject: [PATCH] Finalyze MEO/UEAPPCTX implementation --- MEO/UEAPPCTX/SysUeAppsContext.robot | 80 +++++++++++++++++-- MEO/UEAPPCTX/environment/variables.txt | 2 + MEO/UEAPPCTX/resources/UeAppsContextAPI.robot | 12 +++ 3 files changed, 86 insertions(+), 8 deletions(-) diff --git a/MEO/UEAPPCTX/SysUeAppsContext.robot b/MEO/UEAPPCTX/SysUeAppsContext.robot index a940f38..a92d9a2 100644 --- a/MEO/UEAPPCTX/SysUeAppsContext.robot +++ b/MEO/UEAPPCTX/SysUeAppsContext.robot @@ -5,7 +5,7 @@ Resource environment/variables.txt Resource ../../pics.txt Resource ../../GenericKeywords.robot -Resource resources/UEAppInterfaceAPI.robot +Resource resources/UeAppContextAPI.robot Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_verify=false @@ -14,20 +14,22 @@ Library REST ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT} ssl_v Creation of the application context [Documentation] TC_MEC_MEO_UEAPPCTX_001_OK ... Check that the IUT acknowledges the creation of the application context when requested by an UE Application - ... Reference ETSI GS MEC 014 V1.1.1, clause 7.4.3.4 + ... Reference ETSI GS MEC 016 V1.1.1, clause 7.4.3.4 ... Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext Create application context ${CREATE_APP_CTX} Check HTTP Response Status Code Is 20 Check HTTP Response Body Json Schema Is AppContext Should Be True ${response['body']['appContext']['appInfo']['appName']} == ${APP_NAME} + # Postamble + Delete an application context ${APP_CTX_ID} Creation of the application context with wrong parameters [Documentation] TC_MEC_MEO_UEAPPCTX_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.4.3.4 + ... Reference ETSI GS MEC 016 V1.1.1, clause 7.4.3.4 ... Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext - Create application context ${CREATE_APP_CTX} + Create application context ${CREATE_APP_CTX_BR} Check HTTP Response Status Code Is 400 Check ProblemDetails 400 @@ -35,7 +37,7 @@ Creation of the application context with wrong parameters Update of the application context [Documentation] TC_MEC_MEO_UEAPPCTX_002_OK ... Check that the IUT updates the application callback reference when commanded by an UE Application - ... Reference ETSI GS MEC 014 V1.1.1, clause 7.5.3.2 + ... Reference ETSI GS MEC 016 V1.1.1, clause 7.5.3.2 ... Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext # Preamble Should Be True ${PIC_MEC_SYSTEM} == 1 @@ -43,16 +45,18 @@ Update of the application context Create an application context # Test Body ${CREATE_APP_CTX['callbackReference']}= ${CALLBACK_REFERENCE_1} - Update application context ${CREATE_APP_CTX} + Update application context ${APP_CTX_ID} ${CREATE_APP_CTX} Check HTTP Response Status Code Is 204 Check HTTP Response Body Json Schema Is AppContext Should Be True ${response['body']['appContext']['callbackReference']} == ${CALLBACK_REFERENCE_1} + # Postamble + Delete an application context ${APP_CTX_ID} Update of the application context with wrong parameters [Documentation] TC_MEC_MEO_UEAPPCTX_002_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.5.3.2 + ... Reference ETSI GS MEC 016 V1.1.1, clause 7.5.3.2 ... Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext # Preamble Should Be True ${PIC_MEC_SYSTEM} == 1 @@ -60,9 +64,58 @@ Update of the application context with wrong parameters Create an application context # Test Body ${CREATE_APP_CTX['callbackReference']}= '' # Empty string - Update application context ${CREATE_APP_CTX} + Update application context ${APP_CTX_ID} ${CREATE_APP_CTX} Check HTTP Response Status Code Is 400 Check ProblemDetails 400 + # Postamble + Delete an application context ${APP_CTX_ID} + + +Update of the application context with unknown URI + [Documentation] TC_MEC_MEO_UEAPPCTX_002_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 016 V1.1.1, clause 7.5.3.2 + ... Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext + # Preamble + Should Be True ${PIC_MEC_SYSTEM} == 1 + Should Be True ${PIC_SERVICES} == 1 + Create an application context + # Test Body + ${CREATE_APP_CTX['callbackReference']}= ${CALLBACK_REFERENCE_1} + Update application context ${NON_EXISTENT_APP_CTX_ID} ${CREATE_APP_CTX} + Check HTTP Response Status Code Is 404 + Check ProblemDetails 404 + # Postamble + Delete an application context ${APP_CTX_ID} + + +Delete of the application context + [Documentation] TC_MEC_MEO_UEAPPCTX_003_OK + ... Check that the IUT deletes the application context when commanded by an UE Application + ... Reference ETSI GS MEC 016 V1.1.1, clause 7.5.3.5 + ... Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext + # Preamble + Should Be True ${PIC_MEC_SYSTEM} == 1 + Should Be True ${PIC_SERVICES} == 1 + Create an application context + # Test Body + Delete application context ${APP_CTX_ID} + Check HTTP Response Status Code Is 204 + + +Delete of the application context + [Documentation] TC_MEC_MEO_UEAPPCTX_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 016 V1.1.1, clause 7.5.3.5 + ... Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext + # Preamble + Should Be True ${PIC_MEC_SYSTEM} == 1 + Should Be True ${PIC_SERVICES} == 1 + # AppCtx not created! + # Test Body + Delete application context ${APP_CTX_ID} + Check HTTP Response Status Code Is 404 + Check ProblemDetails 404 *** Keywords *** @@ -88,3 +141,14 @@ Update application context Put /exampleAPI/mx2/v2/app_contexts/${context_id} ${content} ${output}= Output response Set Suite Variable ${response} ${output} + + +Delete application context + [Arguments] ${context_id} + Set Headers {"Accept":"application/json"} + Set Headers {"Content-Type":"application/json"} + Set Headers {"Authorization":"${TOKEN}"} + Set Headers {"Content-Length":"0"} + Delete /exampleAPI/mx2/v2/app_contexts/${context_id} + ${output}= Output response + Set Suite Variable ${response} ${output} diff --git a/MEO/UEAPPCTX/environment/variables.txt b/MEO/UEAPPCTX/environment/variables.txt index b1261d2..c06ad55 100644 --- a/MEO/UEAPPCTX/environment/variables.txt +++ b/MEO/UEAPPCTX/environment/variables.txt @@ -5,9 +5,11 @@ ${MEC-APP_SCHEMA} http ${MEC-APP_HOST} 192.168.56.1 ${MEC-APP_PORT} 8081 ${APP_CTX_ID} appCtx01 +${NON_EXISTENT_APP_CTX_ID} appCtx99 ${UE_APP_ID} ueIdAppCtx01 ${APP_NAME} MyWornderfulApp ${WRONG_CREATE_APP_CTX} UnknownApp ${CALLBACK_REFERENCE} http://www.acme.com/MyWonderfulApp/v1 ${CALLBACK_REFERENCE_1} http://www.acme.com/MyWonderfulApp/v2 ${CREATE_APP_CTX} { "contextId": "${CREATE_APP_CTX}", "associateUeAppId": "${UE_APP_ID}", "callbackReference": "${CALLBACK_REFERENCE}", "appInfo": { "appName": "${APP_NAME}", "appProvider": "ACME & Co", "appSoftVersion": "1.0.0.1", "appDescription": "This is a wonderful test application", "referenceURL": "http://www.acme.com/MyWonderfulPackage", "appPackageSource": "MyWonderfulPackage" } } +${CREATE_APP_CTX_BR} { "context": "${CREATE_APP_CTX}", "associateUeAppId": "${UE_APP_ID}", "callbackReference": "${CALLBACK_REFERENCE}", "appInfo": { "appName": "${APP_NAME}", "appProvider": "ACME & Co", "appSoftVersion": "1.0.0.1", "appDescription": "This is a wonderful test application", "referenceURL": "http://www.acme.com/MyWonderfulPackage", "appPackageSource": "MyWonderfulPackage" } } diff --git a/MEO/UEAPPCTX/resources/UeAppsContextAPI.robot b/MEO/UEAPPCTX/resources/UeAppsContextAPI.robot index b997350..a8c94d0 100644 --- a/MEO/UEAPPCTX/resources/UeAppsContextAPI.robot +++ b/MEO/UEAPPCTX/resources/UeAppsContextAPI.robot @@ -21,3 +21,15 @@ Create an application context Check HTTP Response Body Json Schema Is AppContext Set Suite Variable ${APP_CTX_ID} ${response['body']['contextId'] Should Not Be Empty ${APP_CTX_ID} + + +Delete an application context + [Arguments] ${context_id} + Set Headers {"Accept":"application/json"} + Set Headers {"Content-Type":"application/json"} + Set Headers {"Authorization":"${TOKEN}"} + Set Headers {"Content-Length":"0"} + Delete /exampleAPI/mx2/v2/app_contexts/${context_id} + ${output}= Output response + Set Suite Variable ${response} ${output} + Check HTTP Response Status Code Is 204 -- GitLab