Commit a9131a60 authored by Elian Kraja's avatar Elian Kraja
Browse files

Updating MEC 016 to v2.2.1

parent 770b5aaf
Loading
Loading
Loading
Loading
Loading
+0 −0

File moved.

+173 −0
Original line number Diff line number Diff line
@@ -3,117 +3,107 @@

*** Settings ***
Resource    environment/variables.txt
Resource    ../../pics.txt
Resource    ../../GenericKeywords.robot
Resource    resources/UeAppsContextAPI.robot
Resource    ../../../pics.txt
Resource    ../../../GenericKeywords.robot
Library     String
Library     OperatingSystem
Library     REST    ${MEC-APP_SCHEMA}://${MEC-APP_HOST}:${MEC-APP_PORT}    ssl_verify=false


*** Test Cases ***
Creation of the application context
    [Documentation]   TC_MEC_MEO_UEAPPCTX_001_OK
TP_MEC_MEC016_MEO_UEAPPCTX_001_OK
    [Documentation] 
    ...  Check that the IUT acknowledges the creation of the application context when requested by an UE Application
    ...  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}
    ...  Reference ETSI GS MEC 016 v2.2.1, clause 7.4.3.4
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create application context    AppContext.json
    Check HTTP Response Status Code Is    201
    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}
    Should Be Equal As Strings   ${response['body']['appInfo']['appName']}    MyNewWornderfulApp
    Set Suite Variable    ${contextId}    ${response['body']['contextId']}


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 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_BR}
TP_MEC_MEC016_MEO_UEAPPCTX_001_BR
    [Documentation]   
    ...  Check that the IUT responds with an error when a request with incorrect URL is sent by a MEC Application
    ...  Reference ETSI GS MEC 016 v2.2.1, clause 7.4.3.4
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create application context    AppContext_BR.json
    Check HTTP Response Status Code Is    400
    Check ProblemDetails    400
    

Update of the application context
    [Documentation]   TC_MEC_MEO_UEAPPCTX_002_OK
TP_MEC_MEC016_MEO_UEAPPCTX_001_NF
    [Documentation]   
    ...  Check that the IUT responds with an error when a request with incorrect URL is sent by a MEC Application
    ...  Reference ETSI GS MEC 016 v2.2.1, clause 7.4.3.4
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create application context using wrong endpoint    AppContext.json
    Check HTTP Response Status Code Is    404
    

TP_MEC_MEC016_MEO_UEAPPCTX_002_OK
    [Documentation]   
    ...  Check that the IUT updates the application callback reference when commanded by an UE 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
    ...  Reference ETSI GS MEC 016 v2.2.1, clause 7.5.3.2
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create an application context
    # Test Body
    ${CREATE_APP_CTX}=    Set Variable  ${CALLBACK_REFERENCE_1}
    Update application context    ${APP_CTX_ID}    ${CREATE_APP_CTX}
    Update application context        ${contextId}    UpdateAppContext.json
    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}

    Should Be Equal As Strings    ${response['body']['callbackReference']}    http://127.0.0.1/callbackuri 

Update of the application context with wrong parameters
    [Documentation]   TC_MEC_MEO_UEAPPCTX_002_BR
TP_MEC_MEC016_MEO_UEAPPCTX_002_BR
    [Documentation]   
    ...  Check that the IUT responds with an error when a request with incorrect parameters 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
    ...  Reference ETSI GS MEC 016 v2.2.1, clause 7.5.3.2
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create an application context
    # Test Body
    ${CREATE_APP_CTX}=     Set Variable  '' # Empty string
    Update application context    ${APP_CTX_ID}    ${CREATE_APP_CTX}
    Update application context    ${contextId}    UpdateAppContext_BR.json
    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
TP_MEC_MEC016_MEO_UEAPPCTX_002_NF
    [Documentation]   
    ...  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
    ...  Reference ETSI GS MEC 016 2.2.1, clause 7.5.3.2
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    # Preamble
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create an application context
    # Test Body
    ${CREATE_APP_CTX}=    Set Variable    ${CALLBACK_REFERENCE_1}
    Update application context    ${NON_EXISTENT_APP_CTX_ID}    ${CREATE_APP_CTX}
    Update application context using wrong endpoint    ${contextId}    UpdateAppContext.json
    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
TP_MEC_MEC016_MEO_UEAPPCTX_003_OK
    [Documentation]  
    ...  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 ETSI GS MEC 016 2.2.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}
    Delete application context    ${contextId}
    Check HTTP Response Status Code Is    204


Delete of the application context with non esistent APP CTX ID
    [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
TP_MEC_MEC016_MEO_UEAPPCTX_003_NF
    [Documentation]  
    ...  Check that the IUT deletes the application context when commanded by an UE Application
    ...  Reference ETSI GS MEC 016 2.2.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}
    Delete application context    ${NON_EXISTING_CONTEXT_ID}
    Check HTTP Response Status Code Is    404
    Check ProblemDetails    404

@@ -121,13 +111,24 @@ Delete of the application context with non esistent APP CTX ID
*** Keywords ***
Create application context
    [Arguments]    ${content}
    Should Be True    ${PIC_MEC_SYSTEM} == 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"}
    Post    /exampleAPI/mx2/v2/app_contexts    ${content}
    ${path}    Catenate    SEPATATOR=      jsons/     ${content}
    ${body}    Get Binary File    ${path}
    Post    ${apiRoot}/${apiName}/${apiVersion}/app_contexts    ${content}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    

Create application context using wrong endpoint
    [Arguments]    ${content}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    ${path}    Catenate    SEPATATOR=      jsons/     ${content}
    ${body}    Get Binary File    ${path}
    Post    ${apiRoot}/${apiName}/${apiVersion}/app_contexts_error    ${content}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}

@@ -137,18 +138,36 @@ Update application context
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Length":"0"}
    Put    /exampleAPI/mx2/v2/app_contexts/${context_id}    ${content}
    Put    ${apiRoot}/${apiName}/${apiVersion}/app_contexts/${context_id}    ${content}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}


Update application context using wrong endpoint
    [Arguments]    ${context_id}    ${content}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Put    ${apiRoot}/${apiName}/${apiVersion}/app_contexts_error/${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}
    Delete    ${apiRoot}/${apiName}/${apiVersion}/app_contexts/${context_id}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    
Delete application context using wrong endpoint
    [Arguments]    ${context_id}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Length":"0"}
    Delete    ${apiRoot}/${apiName}/${apiVersion}/app_contexts_error/${context_id}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
+13 −0
Original line number Diff line number Diff line
*** Variables ***
${apiRoot}        
${apiName}        dev_app
${apiVersion}     v1

${MEC-APP_SCHEMA}                   http
${MEC-APP_HOST}                     192.168.56.1
${MEC-APP_PORT}                     8081

${TOKEN}                            Basic YWxhZGRpbjpvcGVuc2VzYW1l

${contextId}    
${NON_EXISTING_CONTEXT_ID}          NON_EXISTING_CONTEXT_ID
 No newline at end of file
+13 −0
Original line number Diff line number Diff line
{
	"associateDevAppId":"MyNewWornderfulDevAppId",
	"appInfo":{
		"appName":"MyNewWornderfulApp",
		"appProvider":"TF012",
		"appDVersion":"v0.0.1",
		"userAppInstanceInfo":[
			{
			}
		]
	}
}
+13 −0
Original line number Diff line number Diff line
{
	"associateDevAppId":"MyNewWornderfulDevAppId",
	"appInfo":{
		"app":"MyNewWornderfulApp",
		"appProvider":"TF012",
		"appDVersion":"v0.0.1",
		"userAppInstanceInfo":[
			{
			}
		]
	}
}
Loading