PlatServices.robot 3.45 KB
Newer Older
*** Settings ***

Documentation
...    A test suite for validating Service Availability Query (SAQ) operations.

Resource    ../../../GenericKeywords.robot
Elian Kraja's avatar
Elian Kraja committed
Resource    environment/variables.txt
Library     REST    ${SCHEMA}://${HOST}:${PORT}    ssl_verify=false
Library     OperatingSystem  
Elian Kraja's avatar
Elian Kraja committed
Default Tags    TC_MEC_SRV_SAQ
TP_MEC_MEC011_SRV_SAQ_001_OK
    [Documentation]
    ...    Check that the IUT responds with a list of available MEC services
    ...    when queried by a MEC Application
    ...
    ...    Reference    ETSI GS MEC 011 V2.2.1, clause 8.2.3.3.1
    ...    OpenAPI    https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#/definitions/ServiceInfoList

    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
Elian Kraja's avatar
Elian Kraja committed
    Get list of available MEC services
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is    ServiceInfoList


TP_MEC_MEC011_SRV_SAQ_001_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 011 V2.2.1, clause 8.2.3.3.1

    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
Elian Kraja's avatar
Elian Kraja committed
    Get list of available MEC services with parameters    instance_id    ${INVALID_VALUE}
    Check HTTP Response Status Code Is    400


TP_MEC_MEC011_SRV_SAQ_002_OK
    [Documentation]
    ...    Check that the IUT responds with the information on a specific service
    ...    when queried by a MEC Application
    ...
    ...    Reference    ETSI GS MEC 011 V2.2.1, clause 8.2.4.3.1
    ...    OpenAPI    https://forge.etsi.org/rep/mec/gs011-app-enablement-api/blob/master/MecServiceMgmtApi.yaml#/definitions/ServiceInfoList

    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
Elian Kraja's avatar
Elian Kraja committed
    Get specific MEC service    ${SERVICE_ID}
    Check HTTP Response Status Code Is    200
Elian Kraja's avatar
Elian Kraja committed
    Check HTTP Response Body Json Schema Is    ServiceInfo
Elian Kraja's avatar
Elian Kraja committed
    Check Response Contains    ${response['body']}    serInstanceId    ${SERVICE_ID}
TP_MEC_MEC011_SRV_SAQ_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 011 V2.2.1, clause 8.2.4.3.1

    [Tags]    PIC_MEC_PLAT    PIC_SERVICES
Elian Kraja's avatar
Elian Kraja committed
    Get specific MEC service    ${NON_EXISTENT_SERVICE_ID}
    Check HTTP Response Status Code Is    404
Elian Kraja's avatar
Elian Kraja committed


*** Keywords ***
Get list of available MEC services with parameters
    [Arguments]    ${key}=None    ${value}=None
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Type":"*/*"}
Elian Kraja's avatar
Elian Kraja committed
    Get    ${apiRoot}/${apiName}/${apiVersion}/services?${key}=${value}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    
Get list of available MEC services
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Type":"*/*"}
Elian Kraja's avatar
Elian Kraja committed
    Get    ${apiRoot}/${apiName}/${apiVersion}/services
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}
    
Get specific MEC service
    [Arguments]    ${serviceId}
    Set Headers    {"Accept":"application/json"}
    Set Headers    {"Authorization":"${TOKEN}"}
    Set Headers    {"Content-Type":"*/*"}
Elian Kraja's avatar
Elian Kraja committed
    Get    ${apiRoot}/${apiName}/${apiVersion}/services/${serviceId}
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}