Commit ab3921d4 authored by Gabriele Scivoletto's avatar Gabriele Scivoletto
Browse files

Merge branch 'TTF_T027' of https://forge.etsi.org/rep/mec/gs032p3-robot-test-suite into TTF_T027

parents 8081c1c9 e956a413
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@ ${APP_TERM_NOTIF_CALLBACK_URI} http://127.0.0.1/subscribe

${SUBSCRIPTION_ID}                      e0deee2b-6e50-4f33-ab09-8bf0585025d3
${NON_EXISTENT_SUBSCRIPTION_ID}     NON_EXISTENT_SUBSCRIPTION_ID

${SUB_ID}


# ${SUBSCRIPTION_TYPE}                MobilityProcedureSubscription
+39 −8
Original line number Diff line number Diff line
*** Settings ***

Documentation
...    A test suite for validating DNS rules (DNS) operations.
...    A test suite for validating Platform Configuration (CONF) operations.

Resource    ../../../GenericKeywords.robot
Resource    environment/variables.txt
@@ -16,7 +16,7 @@ Default Tags TC_MEC_SRV_CONF

*** Test Cases ***

TP_MEC_MEC011_SRV_CONFTASK_001_OK
TC_MEC_MEC011_SRV_CONFTASK_001_OK
    [Documentation]
    ...    Check that the IUT responds that it has completed 
    ...    the application level termination
@@ -25,11 +25,13 @@ TP_MEC_MEC011_SRV_CONFTASK_001_OK
    ...    "ETSI GS MEC 011 3.2.1, clause 7.1.4.3",
    ...    "ETSI GS MEC 011 3.2.1, clause 7.2.11.3.4"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    Request termination of MEC Application   ${APP_INSTANCE_ID}    AppTerminationConfirmation
    Check HTTP Response Status Code Is    204
    [Teardown]   Delete MEC application instance profile   ${APP_INSTANCE_ID}
    

TP_MEC_MEC011_SRV_CONFTASK_001_NF
TC_MEC_MEC011_SRV_CONFTASK_001_NF
    [Documentation]
    ...    Check that the IUT responds with an error
    ...    when requested graceful termination/stop of an unknown MEC Application instance
@@ -38,13 +40,14 @@ TP_MEC_MEC011_SRV_CONFTASK_001_NF
    ...    "ETSI GS MEC 011 3.2.1, clause 7.1.4.3",
    ...    "ETSI GS MEC 011 3.2.1, clause 7.2.11.3.4"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Teardown]   Delete MEC application instance profile   ${NON_EXISTING_APP_INSTANCE_ID}
    Request termination of MEC Application    ${NON_EXISTING_APP_INSTANCE_ID}    AppTerminationConfirmation
    Check HTTP Response Status Code Is    404
    



TP_MEC_MEC011_SRV_CONFTASK_002_OK
TC_MEC_MEC011_SRV_CONFTASK_002_OK
    [Documentation]
    ...    Check that the IUT responds with an acknowledge
    ...    when requested readiness status for a MEC Application instance
@@ -53,11 +56,13 @@ TP_MEC_MEC011_SRV_CONFTASK_002_OK
    ...    "ETSI GS MEC 011 3.2.1, clause 7.1.4.3",
    ...    "ETSI GS MEC 011 3.2.1, clause 7.2.11.3.4"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    Request readiness status of MEC Application    ${APP_INSTANCE_ID}    AppReadyConfirmation
    Check HTTP Response Status Code Is    204
    [Teardown]   Delete MEC application instance profile   ${APP_INSTANCE_ID}
 

TP_MEC_MEC011_SRV_CONFTASK_002_NF
TC_MEC_MEC011_SRV_CONFTASK_002_NF
    [Documentation]
    ...    Check that the IUT responds with an error
    ...    when requested readiness status for an unknown MEC Application instance
@@ -66,11 +71,37 @@ TP_MEC_MEC011_SRV_CONFTASK_002_NF
    ...    "ETSI GS MEC 011 3.2.1, clause 7.1.4.3",
    ...    "ETSI GS MEC 011 3.2.1, clause 7.2.11.3.4"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Teardown]   Delete MEC application instance profile   ${NON_EXISTING_APP_INSTANCE_ID}
    Request readiness status of MEC Application    ${NON_EXISTING_APP_INSTANCE_ID}   AppReadyConfirmation
    Check HTTP Response Status Code Is    404


*** Keywords ***
Create a new MEC application instance profile
    [Arguments]    ${content}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    #Set Headers    {"Content-Type":"*/*"}
    Set Headers    {"Authorization":"${TOKEN}"}
    ${file}=    Catenate    SEPARATOR=    jsons/    ${content}    .json
    ${body}=    Get File    ${file}
    POST      http://${HOST_REG_APP}:${PORT_REG_APP}/${apiRoot_REG_APP}${apiName_REG_APP}/${apiVersion_REG_APP}/registrations    ${body}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    Set Suite Variable    ${APP_INSTANCE_ID}   ${response['body']['appInstanceId']}



Delete MEC application instance profile
    [Arguments]    ${app_instance_id}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    #Set Headers    {"Content-Type":"*/*"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Delete    http://${HOST_REG_APP}:${PORT_REG_APP}/${apiRoot_REG_APP}${apiName_REG_APP}/${apiVersion_REG_APP}/registrations/${app_instance_id}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}

Request termination of MEC Application
    [Arguments]    ${appInstanceId}    ${content}
    Set Headers    {"Accept":"application/json"}
+8 −0
Original line number Diff line number Diff line
@@ -9,6 +9,14 @@ ${apiRoot}
${apiName}        mec_app_support
${apiVersion}     v2


${HOST_REG_APP}             127.0.0.1
${PORT_REG_APP}             8082
${apiRoot_REG_APP}          
${apiName_REG_APP}          mec_app_support         
${apiVersion_REG_APP}       v2


# Specific variables
${APP_INSTANCE_ID}                       5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1f
${NON_EXISTING_APP_INSTANCE_ID}            NON_EXISTING_APP_INSTANCE_ID
 No newline at end of file
+3 −0
Original line number Diff line number Diff line
{
  "appName": "sampleAppName"
}
 No newline at end of file
+52 −12
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@ Default Tags TC_MEC_SRV_DNS

*** Test Cases ***

TP_MEC_MEC011_SRV_DNS_001_OK
TC_MEC_MEC011_SRV_DNS_001_OK
    [Documentation]
    ...    Check that the IUT responds with a list of active DNS rules
    ...    when queried by a MEC Application
@@ -25,11 +25,13 @@ TP_MEC_MEC011_SRV_DNS_001_OK
    ...               "ETSI GS MEC 011 3.2.1, clause 7.1.2.3",
    ...               "ETSI GS MEC 011 3.2.1, clause 7.2.9.3.1"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    Get list of active DNS rules    ${APP_INSTANCE_ID}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is    DnsRuleList
    [Teardown]   Delete MEC application instance profile   ${APP_INSTANCE_ID}
   
TP_MEC_MEC011_SRV_DNS_001_NF
TC_MEC_MEC011_SRV_DNS_001_NF
    [Documentation]
    ...    Check that the IUT responds with a list of active DNS rules
    ...    when queried by a MEC Application
@@ -38,13 +40,14 @@ TP_MEC_MEC011_SRV_DNS_001_NF
    ...               "ETSI GS MEC 011 3.2.1, clause 7.1.2.3",
    ...               "ETSI GS MEC 011 3.2.1, clause 7.2.9.3.1"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Teardown]   Delete MEC application instance profile   ${NOT_EXISTENT_APP_INSTANCE_ID}
    Get list of active DNS rules    ${NOT_EXISTENT_APP_INSTANCE_ID}
    Check HTTP Response Status Code Is    404
    



TP_MEC_MEC011_SRV_DNS_002_OK
TC_MEC_MEC011_SRV_DNS_002_OK
    [Documentation]
    ...    Check that the IUT responds with the information on a specific DNS rule
    ...    when queried by a MEC Application
@@ -53,6 +56,8 @@ TP_MEC_MEC011_SRV_DNS_002_OK
    ...               "ETSI GS MEC 011 3.2.1, clause 7.1.2.3",
    ...               "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    
    Get individual DNS rule    ${APP_INSTANCE_ID}    ${DNS_RULE_ID}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is    DnsRule
@@ -60,7 +65,7 @@ TP_MEC_MEC011_SRV_DNS_002_OK



TP_MEC_MEC011_SRV_DNS_002_NF
TC_MEC_MEC011_SRV_DNS_002_NF
    [Documentation]
    ...    Check that the IUT responds with an error when
    ...    a request for an unknown URI is sent by a MEC Application
@@ -69,11 +74,12 @@ TP_MEC_MEC011_SRV_DNS_002_NF
    ...               "ETSI GS MEC 011 3.2.1, clause 7.1.2.3",
    ...               "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    
    Get individual DNS rule    ${APP_INSTANCE_ID}    ${NON_ESISTENT_DNS_RULE_ID}
    Check HTTP Response Status Code Is    404


TP_MEC_MEC011_SRV_DNS_003_OK
TC_MEC_MEC011_SRV_DNS_003_OK
    [Documentation]
    ...    Check that the IUT responds with the information on a specific DNS rule 
    ...    when queried by a MEC Application
@@ -82,14 +88,16 @@ TP_MEC_MEC011_SRV_DNS_003_OK
    ...              "ETSI GS MEC 011 3.2.1, clause 7.1.2.3",
    ...              "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    Update a DNS Rule    ${APP_INSTANCE_ID}    ${DNS_RULE_ID}    DnsRuleUpdate
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is    DnsRule
    Check Response Contains    ${response['body']}    dnsRuleId    ${DNS_RULE_ID}
    Check Response Contains    ${response['body']}    ipAddress    ${SOME_IP_ADDRESS}
    [Teardown]   Delete MEC application instance profile   ${APP_INSTANCE_ID}
   

TP_MEC_MEC011_SRV_DNS_003_BR
TC_MEC_MEC011_SRV_DNS_003_BR
    [Documentation]
    ...    Check that the IUT responds with an error when
    ...    a request with incorrect parameters is sent by a MEC Application
@@ -99,11 +107,13 @@ TP_MEC_MEC011_SRV_DNS_003_BR
    ...              "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1"

    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    Update a DNS Rule    ${APP_INSTANCE_ID}    ${DNS_RULE_ID}    DnsRuleUpdateError
    Check HTTP Response Status Code Is    400
    [Teardown]   Delete MEC application instance profile   ${APP_INSTANCE_ID}
   

TP_MEC_MEC011_SRV_DNS_003_NF
TC_MEC_MEC011_SRV_DNS_003_NF
    [Documentation]
    ...    Check that the IUT responds with an error when
    ...    a request for an unknown URI is sent by a MEC Application
@@ -113,12 +123,14 @@ TP_MEC_MEC011_SRV_DNS_003_NF
    ...              "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1"

    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    Update a DNS Rule    ${APP_INSTANCE_ID}    ${NON_ESISTENT_DNS_RULE_ID}    DnsRuleUpdate
    Check HTTP Response Status Code Is    404
    [Teardown]   Delete MEC application instance profile   ${APP_INSTANCE_ID}
   


TP_MEC_MEC011_SRV_DNS_003_PF
TC_MEC_MEC011_SRV_DNS_003_PF
    [Documentation]
    ...    Check that the IUT responds with an error when
    ...    a request sent by a MEC Application doesn't comply with a required condition
@@ -127,12 +139,40 @@ TP_MEC_MEC011_SRV_DNS_003_PF
    ...              "ETSI GS MEC 011 3.2.1, clause 7.1.2.3",
    ...              "ETSI GS MEC 011 3.2.1, clause 7.2.10.3.1"
    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
    [Setup]   Create a new MEC application instance profile  AppInfo       
    Update a DNS Rule with invalid etag    ${APP_INSTANCE_ID}    ${DNS_RULE_ID}    DnsRuleUpdate
    Check HTTP Response Status Code Is    412
    [Teardown]   Delete MEC application instance profile   ${APP_INSTANCE_ID}
   



*** Keywords ***
Create a new MEC application instance profile
    [Arguments]    ${content}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    #Set Headers    {"Content-Type":"*/*"}
    Set Headers    {"Authorization":"${TOKEN}"}
    ${file}=    Catenate    SEPARATOR=    jsons/    ${content}    .json
    ${body}=    Get File    ${file}
    POST      http://${HOST_REG_APP}:${PORT_REG_APP}/${apiRoot_REG_APP}${apiName_REG_APP}/${apiVersion_REG_APP}/registrations    ${body}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    Set Suite Variable    ${APP_INSTANCE_ID}   ${response['body']['appInstanceId']}



Delete MEC application instance profile
    [Arguments]    ${app_instance_id}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Content-Type":"application/json"}
    #Set Headers    {"Content-Type":"*/*"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Delete    http://${HOST_REG_APP}:${PORT_REG_APP}/${apiRoot_REG_APP}${apiName_REG_APP}/${apiVersion_REG_APP}/registrations/${app_instance_id}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    
Get list of active DNS rules    
    [Arguments]    ${appInstanceId}
    Set Headers    {"Accept":"application/json"}
Loading