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 Original line Diff line number Diff line
@@ -3,117 +3,107 @@


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




*** Test Cases ***
*** Test Cases ***
Creation of the application context
TP_MEC_MEC016_MEO_UEAPPCTX_001_OK
    [Documentation]   TC_MEC_MEO_UEAPPCTX_001_OK
    [Documentation] 
    ...  Check that the IUT acknowledges the creation of the application context when requested by an UE Application
    ...  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 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#/definitions/AppContext
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    Create application context    ${CREATE_APP_CTX}
    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 Status Code Is    201
    Check HTTP Response Body Json Schema Is   AppContext
    Check HTTP Response Body Json Schema Is   AppContext
    Should Be True    ${response['body']['appContext']['appInfo']['appName']} == ${APP_NAME}
    Should Be Equal As Strings   ${response['body']['appInfo']['appName']}    MyNewWornderfulApp
    # Postamble
    Set Suite Variable    ${contextId}    ${response['body']['contextId']}
    Delete an application context    ${APP_CTX_ID}




Creation of the application context with wrong parameters
TP_MEC_MEC016_MEO_UEAPPCTX_001_BR
    [Documentation]   TC_MEC_MEO_UEAPPCTX_001_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 an error when a request with incorrect URL is sent by a MEC Application
    ...  Reference ETSI GS MEC 016 V1.1.1, clause 7.4.3.4
    ...  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#/definitions/AppContext
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    Create application context    ${CREATE_APP_CTX_BR}
    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 HTTP Response Status Code Is    400
    Check ProblemDetails    400
    
    


Update of the application context
TP_MEC_MEC016_MEO_UEAPPCTX_001_NF
    [Documentation]   TC_MEC_MEO_UEAPPCTX_002_OK
    [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
    ...  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 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#/definitions/AppContext
    ...  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_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create an application context
    # Test Body
    # Test Body
    ${CREATE_APP_CTX}=    Set Variable  ${CALLBACK_REFERENCE_1}
    Update application context        ${contextId}    UpdateAppContext.json
    Update application context    ${APP_CTX_ID}    ${CREATE_APP_CTX}
    Check HTTP Response Status Code Is    204
    Check HTTP Response Status Code Is    204
    Check HTTP Response Body Json Schema Is   AppContext
    Check HTTP Response Body Json Schema Is   AppContext
    Should Be True    ${response['body']['appContext']['callbackReference']} == ${CALLBACK_REFERENCE_1}
    Should Be Equal As Strings    ${response['body']['callbackReference']}    http://127.0.0.1/callbackuri 
    # Postamble
    Delete an application context    ${APP_CTX_ID}



Update of the application context with wrong parameters
TP_MEC_MEC016_MEO_UEAPPCTX_002_BR
    [Documentation]   TC_MEC_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
    ...  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 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#/definitions/AppContext
    ...  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_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create an application context
    Update application context    ${contextId}    UpdateAppContext_BR.json
    # Test Body
    ${CREATE_APP_CTX}=     Set Variable  '' # Empty string
    Update application context    ${APP_CTX_ID}    ${CREATE_APP_CTX}
    Check HTTP Response Status Code Is    400
    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
TP_MEC_MEC016_MEO_UEAPPCTX_002_NF
    [Documentation]   TC_MEC_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
    ...  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 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#/definitions/AppContext
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml
    # Preamble
    # Preamble
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create an application context
    Update application context using wrong endpoint    ${contextId}    UpdateAppContext.json
    # Test Body
    ${CREATE_APP_CTX}=    Set Variable    ${CALLBACK_REFERENCE_1}
    Update application context    ${NON_EXISTENT_APP_CTX_ID}    ${CREATE_APP_CTX}
    Check HTTP Response Status Code Is    404
    Check HTTP Response Status Code Is    404
    Check ProblemDetails    404
    # Postamble
    Delete an application context    ${APP_CTX_ID}




Delete of the application context
TP_MEC_MEC016_MEO_UEAPPCTX_003_OK
    [Documentation]   TC_MEC_MEO_UEAPPCTX_003_OK
    [Documentation]  
    ...  Check that the IUT deletes the application context when commanded by an UE Application
    ...  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
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext
    # Preamble
    # Preamble
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Create an application context
    Delete application context    ${contextId}
    # Test Body
    Delete application context    ${APP_CTX_ID}
    Check HTTP Response Status Code Is    204
    Check HTTP Response Status Code Is    204




Delete of the application context with non esistent APP CTX ID
TP_MEC_MEC016_MEO_UEAPPCTX_003_NF
    [Documentation]   TC_MEC_MEO_UEAPPCTX_003_NF
    [Documentation]  
    ...  Check that the IUT responds with an error when a request for an unknown URI is sent by a MEC Application
    ...  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
    ...  Reference https://forge.etsi.org/gitlab/mec/gs016-ue-app-api/blob/master/UEAppInterfaceApi.yaml#/definitions/AppContext
    # Preamble
    # Preamble
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Should Be True    ${PIC_SERVICES} == 1
    # AppCtx not created!
    Delete application context    ${NON_EXISTING_CONTEXT_ID}
    # Test Body
    Delete application context    ${APP_CTX_ID}
    Check HTTP Response Status Code Is    404
    Check HTTP Response Status Code Is    404
    Check ProblemDetails    404
    Check ProblemDetails    404


@@ -121,13 +111,24 @@ Delete of the application context with non esistent APP CTX ID
*** Keywords ***
*** Keywords ***
Create application context
Create application context
    [Arguments]    ${content}
    [Arguments]    ${content}
    Should Be True    ${PIC_MEC_SYSTEM} == 1
    Should Be True    ${PIC_SERVICES} == 1
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Length":"0"}
    ${path}    Catenate    SEPATATOR=      jsons/     ${content}
    Post    /exampleAPI/mx2/v2/app_contexts    ${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
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    Set Suite Variable    ${response}    ${output}


@@ -137,18 +138,36 @@ Update application context
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Length":"0"}
    Put    ${apiRoot}/${apiName}/${apiVersion}/app_contexts/${context_id}    ${content}
    Put    /exampleAPI/mx2/v2/app_contexts/${context_id}    ${content}
    ${output}=    Output    response
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    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
Delete application context
    [Arguments]    ${context_id}
    [Arguments]    ${context_id}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Length":"0"}
    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
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    Set Suite Variable    ${response}    ${output}
+13 −0
Original line number Original line 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 Original line Diff line number Diff line
{
	"associateDevAppId":"MyNewWornderfulDevAppId",
	"appInfo":{
		"appName":"MyNewWornderfulApp",
		"appProvider":"TF012",
		"appDVersion":"v0.0.1",
		"userAppInstanceInfo":[
			{
			}
		]
	}
}
+13 −0
Original line number Original line Diff line number Diff line
{
	"associateDevAppId":"MyNewWornderfulDevAppId",
	"appInfo":{
		"app":"MyNewWornderfulApp",
		"appProvider":"TF012",
		"appDVersion":"v0.0.1",
		"userAppInstanceInfo":[
			{
			}
		]
	}
}
Loading