Commit 99b61786 authored by piscione's avatar piscione
Browse files

Fix on Test setup and test teardown of MEC040 TCs

parent f716a5f3
Loading
Loading
Loading
Loading
+96 −61
Original line number Diff line number Diff line
@@ -2,10 +2,12 @@ Y''[Documentation] robot --outputdir ../../../outputs ./FederationEnablement.r
...    Test Suite to validate the Federation Enablement API (FED) operations.
*** Settings ***
Resource    environment/variables.txt
Resource    ../../pics.txt
Resource    ../../GenericKeywords.robot
Resource    ../../../pics.txt
Resource    ../../../GenericKeywords.robot
Library     REST    ${SCHEMA}://${HOST}:${PORT}    ssl_verify=false
Library     OperatingSystem    
Library     String



Test Setup       Test Setup   ${SYSTEM_ID_PLACEHOLDER}   SystemInfo      ${NO_ACTION}
@@ -19,11 +21,11 @@ TC_MEC_MEC040_SRV_MEF_001_OK
    ...  when requested by a MEC Orchestrator - No query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Retrieve all system info resources
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}



@@ -33,13 +35,14 @@ TC_MEC_MEC040_SRV_MEF_001_OK_02
    ...  when requested by a MEC Orchestrator - SystemId query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    #SystemId cannot be set by the requestor, so Test setup and test tear down are not applicable
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Retrieve all system info resources with query params   ${SYSTEM_ID_QUERY_PARAM}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
    FOR  ${element}  IN  @{response['body']}
      Should Be Equal As Strings    ${element}[systemId]      ${EXPECTED_SYSTEM_ID}
      Should Be Equal As Strings    ${element}[systemId]      ${SYSTEM_ID_1}
    END
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}

TC_MEC_MEC040_SRV_MEF_001_OK_03
    [Documentation]
@@ -47,21 +50,25 @@ TC_MEC_MEC040_SRV_MEF_001_OK_03
    ...  when requested by a MEC Orchestrator - Multiple SystemId query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    #SystemId cannot be set by the requestor, so Test setup and test tear down are not applicable
    
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    
    Retrieve all system info resources with query params   ${MULTIPLE_SYSTEM_ID_QUERY_PARAM}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
    
    FOR  ${element}  IN  @{response['body']}
      IF    '''${element}[systemId]''' == '''${EXPECTED_SYSTEM_ID}'''
      IF    '''${element}[systemId]''' == '''${SYSTEM_ID_1}'''
        ${found_first_system_id}    Set Variable   ${TRUE}
      END
      IF    '''${element}[systemId]''' == '''${EXPECTED_SYSTEM_ID2}'''
      IF    '''${element}[systemId]''' == '''${SYSTEM_ID_2}'''
        ${found_second_system_id}    Set Variable   ${TRUE}
      END
    END
    Should Be True  ${found_first_system_id}
    Should Be True  ${found_second_system_id}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}

   
TC_MEC_MEC040_SRV_MEF_001_OK_04
    [Documentation]
@@ -69,11 +76,12 @@ TC_MEC_MEC040_SRV_MEF_001_OK_04
    ...  when requested by a MEC Orchestrator - Empty SystemId query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    
    Retrieve all system info resources
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}


TC_MEC_MEC040_SRV_MEF_001_OK_05
@@ -82,7 +90,7 @@ TC_MEC_MEC040_SRV_MEF_001_OK_05
    ...  when requested by a MEC Orchestrator - SystemName query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    ${SYSTEM_NAME_VALUE}   Get value entry from JSON file    SystemInfo  systemName

    Retrieve all system info resources with query params   ${SYSTEM_NAME_QUERY_PARAM}
@@ -91,8 +99,7 @@ TC_MEC_MEC040_SRV_MEF_001_OK_05
    FOR  ${element}  IN  @{response['body']}
      Should Be Equal As Strings    ${element}[systemName]      ${SYSTEM_NAME_VALUE}
    END
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}

    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}

TC_MEC_MEC040_SRV_MEF_001_OK_06
    [Documentation]
@@ -100,9 +107,9 @@ TC_MEC_MEC040_SRV_MEF_001_OK_06
    ...  when requested by a MEC Orchestrator - Multiple SystemName query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    ${SYSTEM_NAME_VALUE}   Get value entry from JSON file    SystemInfo  systemName

    ${SYSTEM_NAME_VALUE_2}   Get value entry from JSON file    SystemInfo2  systemName
    Retrieve all system info resources with query params     ${MUTIPLE_SYSTEM_NAME_QUERY_PARAM}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
@@ -110,13 +117,13 @@ TC_MEC_MEC040_SRV_MEF_001_OK_06
      IF    '''${element}[systemName]''' == '''${SYSTEM_NAME_VALUE}'''
        ${found_sys_name_one}    Set Variable   ${TRUE}
      END
      IF    '''${element}[systemName]''' == '''${EXPECTED_SYSTEM_NAME2}'''
      IF    '''${element}[systemName]''' == '''${SYSTEM_NAME_VALUE_2}'''
        ${found_sys_name_two}    Set Variable   ${TRUE}
      END
    END
    Should Be True  ${found_sys_name_one}
    Should Be True  ${found_sys_name_two}
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}



@@ -126,12 +133,12 @@ TC_MEC_MEC040_SRV_MEF_001_OK_07
    ...  when requested by a MEC Orchestrator - Empty SystemName query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    
    Retrieve all system info resources with query params     ${EMPTY_SYSTEM_NAME_QUERY_PARAM}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}


TC_MEC_MEC040_SRV_MEF_001_OK_08
@@ -140,7 +147,7 @@ TC_MEC_MEC040_SRV_MEF_001_OK_08
    ...  when requested by a MEC Orchestrator - systemProvider query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    ${SYS_PROVIDER_VALUE}   Get value entry from JSON file    SystemInfo  systemProvider

    Retrieve all system info resources with query params     ${SYSTEM_PROVIDER_QUERY_PARAM}
@@ -149,7 +156,7 @@ TC_MEC_MEC040_SRV_MEF_001_OK_08
    FOR  ${element}  IN  @{response['body']}
      Should Be Equal As Strings    ${element}[systemProvider]      ${SYS_PROVIDER_VALUE}
    END
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}
  

TC_MEC_MEC040_SRV_MEF_001_OK_09
@@ -158,24 +165,24 @@ TC_MEC_MEC040_SRV_MEF_001_OK_09
    ...  when requested by a MEC Orchestrator - Multiple systemProvider query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    ##TODO complete
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Retrieve all system info resources with query params   ${MUTIPLE_SYS_PROVIDER_QUERY_PAR}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    ${SYS_PROVIDER_VALUE}   Get value entry from JSON file    SystemInfo  systemProvider
    ${SYS_PROVIDER_VALUE_2}   Get value entry from JSON file    SystemInfo2  systemProvider
       
    FOR  ${element}  IN  @{response['body']}
      IF    '''${element}[systemProvider]''' == '''${SYS_PROVIDER_VALUE}'''
        ${sys_provider_found}    Set Variable   ${TRUE}
      END
      IF    '''${element}[systemProvider]''' == '''${EXPECTED_SYSTEM_PROVIDER2}'''
      IF    '''${element}[systemProvider]''' == '''${SYS_PROVIDER_VALUE_2}'''
        ${sys_provider2_found}    Set Variable   ${TRUE}
      END
    END
    Should Be True  ${sys_provider_found}
    Should Be True  ${sys_provider2_found} 
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}
  


@@ -185,14 +192,14 @@ TC_MEC_MEC040_SRV_MEF_001_OK_10
    ...  when requested by a MEC Orchestrator - Empty systemProvider query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfoEmptySystemProvider    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Retrieve all system info resources with query params   ${EMPTY_SYSTEM_PROVIDER_QUERY_PARAM}
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfoList
    FOR  ${element}  IN  @{response['body']}
      Should Be Equal As Strings    ${element}[systemProvider]      ${EMPTY}
    END
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}
  
    
TC_MEC_MEC040_SRV_MEF_001_OK_11
@@ -201,8 +208,9 @@ TC_MEC_MEC040_SRV_MEF_001_OK_11
    ...  when requested by a MEC Orchestrator - Multiple query parameters
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    ${SYS_NAME_VALUE}   Get value entry from JSON file    SystemInfo  systemName
    ${SYS_ID}   Get value entry from JSON file    SystemInfo  systemName
    
    Retrieve all system info resources with query params   ${FILTER_ON_SYSTEM_ID_AND_NAME}
    Check HTTP Response Status Code Is    200
@@ -210,7 +218,7 @@ TC_MEC_MEC040_SRV_MEF_001_OK_11
    ${counterSystemId}    Set Variable    ${0}
    ${counterSystemName}  Set Variable    ${0}
    FOR  ${element}  IN  @{response['body']}
      IF    '''${element}[systemId]''' == '''${EXPECTED_SYSTEM_ID}'''
      IF    '''${element}[systemId]''' == '''${SYS_ID}'''
        ${counterSystemId}=  set variable  ${counterSystemId+1}
      END
      IF    '''${element}[systemName]''' == '''${SYS_NAME_VALUE}'''
@@ -220,7 +228,7 @@ TC_MEC_MEC040_SRV_MEF_001_OK_11
    END
    Should Be True    '${counterSystemName}'>'0'
    Should Be True    '${counterSystemId}'>'0'
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}
  
                                    
TC_MEC_MEC040_SRV_MEF_001_NF_01
@@ -229,11 +237,11 @@ TC_MEC_MEC040_SRV_MEF_001_NF_01
    ...  when selection is not applicable - SystemId
    ...  ETSI GS MEC 040 V3.1.1, clause 7.3.3.1, clause 5.2.2.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${NOT_EXT_SYSTEM_ID_QUERY_PARAM}   ${None}    ${REMOVE_ACTION}
    [Setup]   Remove specific system info resource    ${NOT_EXT_SYSTEM_ID_QUERY_PARAM}   
    Retrieve all system info resources with query params   ${NOT_EXT_SYSTEM_ID_QUERY_PARAM}
    Check HTTP Response Status Code Is    404

TP_MEC_MEC040_SRV_MEF_001_NF_02
TC_MEC_MEC040_SRV_MEF_001_NF_02
    [Documentation]
    ...  Check that the IUT responds with an error
    ...  when selection is not applicable - SystemName
@@ -278,7 +286,7 @@ TC_MEC_MEC040_SRV_MEF_002_OK
    Should Be Equal As Strings    ${response['body']['systemName']}       ${SYS_NAME_VALUE}
    Should Be Equal As Strings    ${response['body']['systemProvider']}       ${SYS_NAME_PROVIDER}

    [Teardown]    Test TearDown   ${response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove specific system info resource    ${response['body']['systemId']}  
   
    

@@ -306,10 +314,12 @@ TC_MEC_MEC040_SRV_MEF_003_OK
    ...  when requested by a MEC Orchestrator
    ...  ETSI GS MEC 040 V3.1.1, clause 7.4.3.1, clause 5.2.2.1.1
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    ## No test setup and teardown applicable because systemId is generated by IUT
    Retrieve specific system info resource   ${EXPECTED_SYSTEM_ID} 
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Retrieve specific system info resource   ${SYSTEM_ID_1} 
    Check HTTP Response Status Code Is    200
    Check HTTP Response Body Json Schema Is  SystemInfo
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}

    
TC_MEC_MEC040_SRV_MEF_003_NF
    [Documentation]
@@ -317,7 +327,7 @@ TC_MEC_MEC040_SRV_MEF_003_NF
    ...  when it receives a request for returning a systemInfo  referred with a wrong systemId
    ...  ETSI GS MEC 040 V3.1.1, clause 7.4.3.1, clause 5.2.2.1.1
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${NOT_EXISTING_SYSTEM_ID}   ${None}    ${REMOVE_ACTION}
    [Setup]  Remove specific system info resource   ${NOT_EXISTING_SYSTEM_ID} 
    Retrieve specific system info resource    ${NOT_EXISTING_SYSTEM_ID} 
    Check HTTP Response Status Code Is    404

@@ -336,12 +346,12 @@ TC_MEC_MEC040_SRV_MEF_004_OK_01
    ...  Check that the IUT updates the systemInfo when requested by a MEC Orchestrator
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.3, clause 5.2.2.1.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    ${SYS_PROVIDER}   Get value entry from JSON file    SystemInfoUpdate  endpoint
    Update specific system info resource  ${setup_response['body']['systemId']}    SystemInfoUpdate 
    Update specific system info resource  ${SYSTEM_ID_1}    SystemInfoUpdate 
    Check HTTP Response Status Code Is    200
    Should Be Equal As Strings    ${response['body']['systemProvider']}        ${SYS_PROVIDER}
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}


TC_MEC_MEC040_SRV_MEF_004_OK_02
@@ -349,12 +359,12 @@ TC_MEC_MEC040_SRV_MEF_004_OK_02
    ...  Check that the IUT updates the systemInfo when requested by a MEC Orchestrator
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.3, clause 5.2.2.1.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}    
    Update specific system info resource  ${setup_response['body']['systemId']}    SystemInfoUpdate2
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Update specific system info resource  ${SYSTEM_ID_1}    SystemInfoUpdate2
    ${SYS_NAME}   Get value entry from JSON file    SystemInfoUpdate2  systemName
    Check HTTP Response Status Code Is    200
    Should Be Equal As Strings    ${response['body']['systemName']}        ${SYS_NAME}
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}


  
@@ -363,15 +373,15 @@ TC_MEC_MEC040_SRV_MEF_004_OK_03
    ...  Check that the IUT updates the systemInfo when requested by a MEC Orchestrator
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.3, clause 5.2.2.1.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}    
    Update specific system info resource  ${setup_response['body']['systemId']}    SystemInfoUpdate3
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Update specific system info resource  ${SYSTEM_ID_1}   SystemInfoUpdate3
    Check HTTP Response Status Code Is    200
    ${SYS_NAME}   Get value entry from JSON file    SystemInfoUpdate3  systemName
    ${SYS_PROVIDER}   Get value entry from JSON file    SystemInfoUpdate3  endpoint
        
    Should Be Equal As Strings    ${response['body']['systemName']}        ${SYS_NAME}
    Should Be Equal As Strings    ${response['body']['systemProvider']}    ${SYS_PROVIDER}
    [Teardown]    Test TearDown    ${setup_response['body']['systemId']}    ${None}      ${REMOVE_ACTION}
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}


TC_MEC_MEC040_SRV_MEF_004_NF
@@ -379,42 +389,46 @@ TC_MEC_MEC040_SRV_MEF_004_NF
    ...  Check that the IUT responds with an error when requested to update an unknown systemInfo
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.3, clause 5.2.2.1.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${NOT_EXISTING_SYSTEM_ID}   ${None}    ${REMOVE_ACTION}    
    [Setup]  Remove specific system info resource   ${NOT_EXISTING_SYSTEM_ID} 
    Update specific system info resource  ${NOT_EXISTING_SYSTEM_ID}    SystemInfoUpdate3
    Check HTTP Response Status Code Is    404

##TODO double check the corresponding TP
#TC_MEC_MEC040_SRV_MEF_004_BR_01
    #[Documentation]
    #...  Check that the IUT responds with an error when requested to update with an inconsistant URI
    #...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.3, clause 5.2.2.1.2
    #...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    #Update specific system info resource  ${NOT_EXISTING_SYSTEM_ID}    SystemInfoUpdate3
    #Check HTTP Response Status Code Is    400
##TODO double check corresponding TP
TC_MEC_MEC040_SRV_MEF_004_BR_01
    [Documentation]
    ...  Check that the IUT responds with an error when requested to update with an inconsistant URI
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.3, clause 5.2.2.1.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    Update specific system info resource  ${NOT_EXISTING_SYSTEM_ID}    SystemInfoUpdate3
    Check HTTP Response Status Code Is    400

TC_MEC_MEC040_SRV_MEF_004_BR_02
    [Documentation]
    ...  Check that the IUT responds with an error when requested to update with no data provided
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.3, clause 5.2.2.1.2
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Update specific system info resource  ${EXPECTED_SYSTEM_ID}    SystemInfoUpdateBR
    Check HTTP Response Status Code Is    400            
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}
    

TC_MEC_MEC040_SRV_MEF_005_OK
    [Documentation]
    ...  Check that the IUT responds with an error when requested to delete an unknown systemInfo
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.5, clause 5.2.2.1.3
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${None}   SystemInfo    ${REGISTER_ACTION}    
    Remove specific system info resource  ${EXPECTED_SYSTEM_ID}  
    [Setup]   Register mutiple system Info and get system Ids   SystemInfo    SystemInfo2    SystemInfo3
    Remove specific system info resource  ${SYSTEM_ID_1}  
    Check HTTP Response Status Code Is    204  
    [Teardown]  Remove mutiple system Info    ${SYSTEM_ID_1}    ${SYSTEM_ID_2}    ${SYSTEM_ID_3}
    
TC_MEC_MEC040_SRV_MEF_005_NF
    [Documentation]
    ...  Check that the IUT responds with an error when requested to delete an unknown systemInfo
    ...  ETSI GS MEC 040 V3.1.1, clause clause 7.4.3.5, clause 5.2.2.1.3
    ...  https://www.etsi.org/deliver/etsi_gs/mec/001_099/040/03.01.01_60/gs_mec040v030101p.pdf
    [Setup]      Test Setup   ${NOT_EXISTING_SYSTEM_ID}   ${None}    ${REMOVE_ACTION}    
    [Setup]      Remove specific system info resource  ${NOT_EXISTING_SYSTEM_ID}
    Remove specific system info resource  ${NOT_EXISTING_SYSTEM_ID}  
    Check HTTP Response Status Code Is    404

@@ -501,6 +515,27 @@ Register System Info
    ${output}=    Output    response
    Set Suite Variable    ${response}    ${output}  

Register mutiple system Info and get system Ids
    [Arguments]     ${content_01}     ${content_02}    ${content_03}
    Register System Info    ${content_01}
    Set Suite Variable      ${SYSTEM_ID_1}    ${response}[body][systemId]
    Register System Info    ${content_02}
    Set Suite Variable      ${SYSTEM_ID_2}    ${response}[body][systemId]
    Register System Info    ${content_03}
    Set Suite Variable      ${SYSTEM_ID_3}    ${response}[body][systemId]


Remove mutiple system Info
    [Arguments]     ${sys_id_1}   ${sys_id_2}    ${sys_id_3}    
    Remove specific system info resource   ${sys_id_1} 
    Remove specific system info resource   ${sys_id_2} 
    Remove specific system info resource   ${sys_id_3} 
    
Register System Info and get system Id
    [Arguments]     ${content}
    Register System Info    ${content}
    Set Suite Variable    ${SYSTEM_ID}    ${response}[body][systemId]
    

Update specific system info resource
    [Arguments]     ${systemId}     ${content}