Commit ee73a66e authored by Benedetta Arena's avatar Benedetta Arena
Browse files

fix: refactor broker naming and centralize setup logic

parent 3abdd713
Loading
Loading
Loading
Loading
+27 −25
Original line number Diff line number Diff line
*** Settings ***
Documentation       Three brokers are set up A, B and C. A has two registrations, one inclusive for the entities created in B and one exclusive for the entity created in C.
...                 The client sends a HTTP GET request to check that quering the offparking type returns the entities in B and C.

Resource            ${EXECDIR}/resources/ApiUtils/ContextInformationConsumption.resource
Resource            ${EXECDIR}/resources/ApiUtils/ContextInformationProvision.resource
Resource            ${EXECDIR}/resources/ApiUtils/ContextSourceDiscovery.resource
@@ -17,18 +17,17 @@ ${second_entity_payload_filename} interoperability/offstreet-parkin
${third_entity_payload_filename}               interoperability/offstreet-parking2-no-location-and-totalspotsnumber.jsonld
${inclusive_registration_payload_file_path}    csourceRegistrations/interoperability/context-source-registration-inclusive-2.jsonld
${exclusive_registration_payload_file_path}    csourceRegistrations/interoperability/context-source-registration-exclusive-2.jsonld
${b1_url}
${b2_url}
${b3_url}
${broker_A_url}
${broker_B_url}
${broker_C_url}

*** Test Cases ***
IOP_CNF_01_01 Query Entities Of Type OffstreetParking Via GET
    [Documentation]    Pre-conditions: no user context. Data only on leaves. B contains OffStreetParking1 and OffStreetParking2 without location and totalSpotsNumber. C contains OffStreetParking2.
    ...                Registrations established: Inclusive in A to B. Exclusive in A to C.
    [Documentation]    The client sends a HTTP GET request to check that quering the offparking type returns the entities in B and C.
    [Tags]    since_v1.6.1    iop    4_3_3    cf_06    additive-inclusive    proxy-exclusive    4_3_6    5_7_2    6_4_3_1

    #Agent queries all entities with type OffstreetParking in A and checks for a successful response that contains the attributes of both entities in B and C.
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${b1_url}
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${broker_A_url}
    Check Response Status Code    200    ${response.status_code}
    @{payload}=    Set Variable   ${response.json()}
    Should Contain    ${payload}\[OffstreetParking1]    availableSpotsNumber
@@ -37,12 +36,12 @@ IOP_CNF_01_01 Query Entities Of Type OffstreetParking Via GET
    Should Contain    ${payload}\[OffstreetParking2]    location

    #Agent queries all entities with type OffstreetParking in B and C
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${b2_url}
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${broker_B_url}
    @{first_expected_payload}=    Set Variable    ${response.json()}
    ${entity_ids}=    Create List    ${entity_id}    ${second_entity_id}
    Check Response Body Containing Entities URIS set to    ${entity_ids}    ${response.json()}

    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${b3_url}
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${broker_C_url}
    @{second_expected_payload}=    Set Variable    ${response.json()}
    Check Response Body Containing Entities URIS set to    ${entity_id}    ${response.json()}

@@ -53,15 +52,18 @@ IOP_CNF_01_01 Query Entities Of Type OffstreetParking Via GET

*** Keywords ***
Setup Initial Context Source Registrations
    [Documentation]    Pre-conditions: B contains OffStreetParking1 and OffStreetParking2 without location and totalSpotsNumber. C contains OffStreetParking2.
    ...                Registration established: Inclusive in A to B. Exclusive in A to C.

    ${entity_id}=    Generate Random Parking Entity Id
    Set Suite Variable    ${entity_id}
    ${second_entity_id}=    Generate Random Parking Entity Id
    Set Suite Variable    ${second_entity_id}
    ${response}=    Create Entity    ${first_entity_payload_filename}    ${entity_id}    broker_url=${b2_url}
    ${response}=    Create Entity    ${first_entity_payload_filename}    ${entity_id}    broker_url=${broker_B_url}
    Check Response Status Code    201    ${response.status_code}
    ${response}=    Create Entity    ${third_entity_payload_filename}    ${second_entity_id}    broker_url=${b2_url}
    ${response}=    Create Entity    ${third_entity_payload_filename}    ${second_entity_id}    broker_url=${broker_B_url}
    Check Response Status Code    201    ${response.status_code}
    ${response}=    Create Entity    ${second_entity_payload_filename}    ${entity_id}    broker_url=${b3_url}
    ${response}=    Create Entity    ${second_entity_payload_filename}    ${entity_id}    broker_url=${broker_C_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id1}=     Generate Random CSR Id
@@ -70,9 +72,9 @@ Setup Initial Context Source Registrations
    ...    ${registration_id1}
    ...    ${inclusive_registration_payload_file_path}
    ...    entity_id=${entity_id}
    ...    broker_url=${b2_url}
    ...    broker_url=${broker_B_url}
    ...    mode=inclusive
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id2}=     Generate Random CSR Id
@@ -81,9 +83,9 @@ Setup Initial Context Source Registrations
    ...    ${registration_id2}
    ...    ${inclusive_registration_payload_file_path}
    ...    entity_id=${second_entity_id}
    ...    broker_url=${b2_url}
    ...    broker_url=${broker_B_url}
    ...    mode=inclusive
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id3}=     Generate Random CSR Id
@@ -92,15 +94,15 @@ Setup Initial Context Source Registrations
    ...    ${registration_id3}
    ...    ${exclusive_registration_payload_file_path}
    ...    entity_id=${entity_id}
    ...    broker_url=${b3_url}
    ...    broker_url=${broker_C_url}
    ...    mode=exclusive
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

Delete Entities And Delete Registrations
    Delete Context Source Registration    ${registration_id1}    broker_url=${b1_url}
    Delete Context Source Registration    ${registration_id2}    broker_url=${b1_url}
    Delete Context Source Registration    ${registration_id3}    broker_url=${b1_url}
    Delete Entity    ${entity_id}    broker_url=${b2_url}
    Delete Entity    ${second_entity_id}    broker_url=${b2_url}
    Delete Entity    ${entity_id}    broker_url=${b3_url}
 No newline at end of file
    Delete Context Source Registration    ${registration_id1}    broker_url=${broker_A_url}
    Delete Context Source Registration    ${registration_id2}    broker_url=${broker_A_url}
    Delete Context Source Registration    ${registration_id3}    broker_url=${broker_A_url}
    Delete Entity    ${entity_id}    broker_url=${broker_B_url}
    Delete Entity    ${second_entity_id}    broker_url=${broker_B_url}
    Delete Entity    ${entity_id}    broker_url=${broker_C_url}
 No newline at end of file
+25 −24
Original line number Diff line number Diff line
*** Settings ***
Documentation       Three brokers are set up A, B and C. A has two registrations, one inclusive for the entities created in B and one exclusive for the entity created in C. 
...                 The client sends and HTTP POST request to check that the entities can be queried from all brokers.

Resource            ${EXECDIR}/resources/ApiUtils/ContextInformationConsumption.resource
Resource            ${EXECDIR}/resources/ApiUtils/ContextInformationProvision.resource
@@ -18,19 +17,18 @@ ${second_entity_payload_filename} interoperability/offstreet-parkin
${third_entity_payload_filename}               interoperability/offstreet-parking2-no-location-and-totalspotsnumber.jsonld
${inclusive_registration_payload_file_path}    csourceRegistrations/interoperability/context-source-registration-inclusive-2.jsonld
${exclusive_registration_payload_file_path}    csourceRegistrations/interoperability/context-source-registration-exclusive-2.jsonld
${b1_url}
${b2_url}
${b3_url}
${broker_A_url}
${broker_B_url}
${broker_C_url}

*** Test Cases ***
IOP_CNF_01_01 Query Entities Of Type OffstreetParking Via POST
    [Documentation]    Pre-conditions: no user context. Data only on leaves. B contains OffStreetParking1 and OffStreetParking2 without location and totalSpotsNumber. C contains OffStreetParking2.
    ...                Registrations established: Inclusive in A to B. Exclusive in A to C.
    [Documentation]    The client sends and HTTP POST request to check that the entities can be queried from all brokers.
    [Tags]    since_v1.6.1    iop    4_3_3    cf_06    additive-inclusive    proxy-exclusive    4_3_6    5_7_2    6_23_2_1

    #Agent queries all entities with type OffstreetParking in A and checks for a successful response that contains the attributes of both entities in B and C.
    @{entities}=    Create List    ${entity_id}    ${second_entity_id}
    ${response}=    Query Entities Via POST   entities=${entities}    broker_url=${b1_url}
    ${response}=    Query Entities Via POST   entities=${entities}    broker_url=${broker_A_url}
    Check Response Status Code    200    ${response.status_code}
    @{payload}=    Set Variable   ${response.json()}
    Should Contain    ${payload}\[OffstreetParking1]    availableSpotsNumber
@@ -39,11 +37,11 @@ IOP_CNF_01_01 Query Entities Of Type OffstreetParking Via POST
    Should Contain    ${payload}\[OffstreetParking2]    location

    #Agent queries all entities with type OffstreetParking in B and C
    ${response}=    Query Entities Via POST   entities=${entities}    broker_url=${b2_url}
    ${response}=    Query Entities Via POST   entities=${entities}    broker_url=${broker_B_url}
    @{first_expected_payload}=    Set Variable    ${response.json()}
    Check Response Body Containing Entities URIS set to    ${entities}    ${response.json()}

    ${response}=    Query Entities Via POST   entities=${entity_id}    broker_url=${b3_url}
    ${response}=    Query Entities Via POST   entities=${entity_id}    broker_url=${broker_C_url}
    @{second_expected_payload}=    Set Variable    ${response.json()}
    Check Response Body Containing Entities URIS set to    ${entity_id}    ${response.json()}

@@ -54,15 +52,18 @@ IOP_CNF_01_01 Query Entities Of Type OffstreetParking Via POST

*** Keywords ***
Setup Initial Context Source Registrations
    [Documentation]    Pre-conditions: no user context. Data only on leaves. B contains OffStreetParking1 and OffStreetParking2 without location and totalSpotsNumber. C contains OffStreetParking2.
    ...                Registrations established: Inclusive in A to B. Exclusive in A to C.

    ${entity_id}=    Generate Random Parking Entity Id
    Set Suite Variable    ${entity_id}
    ${second_entity_id}=    Generate Random Parking Entity Id
    Set Suite Variable    ${second_entity_id}
    ${response}=    Create Entity    ${first_entity_payload_filename}    ${entity_id}    broker_url=${b2_url}
    ${response}=    Create Entity    ${first_entity_payload_filename}    ${entity_id}    broker_url=${broker_B_url}
    Check Response Status Code    201    ${response.status_code}
    ${response}=    Create Entity    ${third_entity_payload_filename}    ${second_entity_id}    broker_url=${b2_url}
    ${response}=    Create Entity    ${third_entity_payload_filename}    ${second_entity_id}    broker_url=${broker_B_url}
    Check Response Status Code    201    ${response.status_code}
    ${response}=    Create Entity    ${second_entity_payload_filename}    ${entity_id}    broker_url=${b3_url}
    ${response}=    Create Entity    ${second_entity_payload_filename}    ${entity_id}    broker_url=${broker_C_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id1}=     Generate Random CSR Id
@@ -71,9 +72,9 @@ Setup Initial Context Source Registrations
    ...    ${registration_id1}
    ...    ${inclusive_registration_payload_file_path}
    ...    entity_id=${entity_id}
    ...    broker_url=${b2_url}
    ...    broker_url=${broker_B_url}
    ...    mode=inclusive
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id2}=     Generate Random CSR Id
@@ -82,9 +83,9 @@ Setup Initial Context Source Registrations
    ...    ${registration_id2}
    ...    ${inclusive_registration_payload_file_path}
    ...    entity_id=${second_entity_id}
    ...    broker_url=${b2_url}
    ...    broker_url=${broker_B_url}
    ...    mode=inclusive
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id3}=     Generate Random CSR Id
@@ -93,15 +94,15 @@ Setup Initial Context Source Registrations
    ...    ${registration_id3}
    ...    ${exclusive_registration_payload_file_path}
    ...    entity_id=${entity_id}
    ...    broker_url=${b3_url}
    ...    broker_url=${broker_C_url}
    ...    mode=exclusive
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

Delete Entities And Delete Registrations
    Delete Context Source Registration    ${registration_id1}    broker_url=${b1_url}
    Delete Context Source Registration    ${registration_id2}    broker_url=${b1_url}
    Delete Context Source Registration    ${registration_id3}    broker_url=${b1_url}
    Delete Entity    ${entity_id}    broker_url=${b2_url}
    Delete Entity    ${second_entity_id}    broker_url=${b2_url}
    Delete Entity    ${entity_id}    broker_url=${b3_url}
 No newline at end of file
    Delete Context Source Registration    ${registration_id1}    broker_url=${broker_A_url}
    Delete Context Source Registration    ${registration_id2}    broker_url=${broker_A_url}
    Delete Context Source Registration    ${registration_id3}    broker_url=${broker_A_url}
    Delete Entity    ${entity_id}    broker_url=${broker_B_url}
    Delete Entity    ${second_entity_id}    broker_url=${broker_B_url}
    Delete Entity    ${entity_id}    broker_url=${broker_C_url}
 No newline at end of file
+56 −54

File changed.

Preview size limit exceeded, changes collapsed.

+40 −38

File changed.

Preview size limit exceeded, changes collapsed.

+28 −26
Original line number Diff line number Diff line
*** Settings ***
Documentation       Four brokers are set up A, B, C and D. A has three registrations, one auxiliary for the entities created in B, one inclusive for the entities created in C and one inclusive for the entity created in D.
...                 Check that the entity returned from A match the attributes from the entity in B, C and D.

Resource            ${EXECDIR}/resources/ApiUtils/ContextInformationConsumption.resource
Resource            ${EXECDIR}/resources/ApiUtils/ContextInformationProvision.resource
Resource            ${EXECDIR}/resources/ApiUtils/ContextSourceDiscovery.resource
@@ -18,19 +18,18 @@ ${second_full_offstreet_payload_filename} interoperability/offstreet
${first_inclusive_registration_payload_file_path}     csourceRegistrations/interoperability/context-source-registration-inclusive-1.jsonld
${second_inclusive_registration_payload_file_path}    csourceRegistrations/interoperability/context-source-registration-inclusive-2.jsonld
${auxiliary_registration_payload_file_path}           csourceRegistrations/interoperability/context-source-registration-auxiliary-1.jsonld
${b1_url}
${b2_url}
${b3_url}
${b4_url}
${broker_A_url}
${broker_B_url}
${broker_C_url}
${broker_D_url}

*** Test Cases ***
IOP_CNF_03_01 Query Entities Of Type OffstreetParking Via GET
    [Documentation]    Pre-conditions: No user context. Data only on leaves. B contains OffStreetParking2 without location. C contains OffStreetParking1. D contains OffStreetParking1 without location.
    ...                Registration established: Auxiliary in A to B. Inclusive in A to C. Inclusive in A to D.
    [Documentation]    Check that the entities returned from A match the attributes from the entities in B, C and D.
    [Tags]    since_v1.6.1    iop    4_3_3    cf_06    additive-inclusive    additive-auxiliary    4_3_6    5_7_2    6_4_3_1

    #Client queries all entities with type OffstreetParking in A and checks for a successful response. 
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${b1_url}
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${broker_A_url}
    Check Response Status Code    200    ${response.status_code}

    &{payload}=    Evaluate    {i['id']: i for i in ${response.json()}}
@@ -38,15 +37,15 @@ IOP_CNF_03_01 Query Entities Of Type OffstreetParking Via GET
    ${second_parking_payload}=    Get From Dictionary    ${payload}    OffstreetParking:2

    #Client queries all entities with type OffstreetParking in B, C and D.
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${b2_url}
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${broker_B_url}
    ${payload}=    Evaluate    {i['id']: i for i in ${response.json()}}
    ${expected_parking1}=    Get From Dictionary    ${payload}    OffstreetParking:2

    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${b3_url}
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${broker_C_url}
    ${payload}=    Evaluate    {i['id']: i for i in ${response.json()}}
    ${expected_parking2}=    Get From Dictionary    ${payload}    OffstreetParking:1

    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${b4_url}
    ${response}=    Query Entities    entity_types=OffstreetParking    broker_url=${broker_D_url}
    ${payload}=    Evaluate    {i['id']: i for i in ${response.json()}}
    ${expected_parking3}=    Get From Dictionary    ${payload}    OffstreetParking:2

@@ -59,14 +58,17 @@ IOP_CNF_03_01 Query Entities Of Type OffstreetParking Via GET

*** Keywords ***
Setup Initial Context Source Registrations
    [Documentation]    Pre-conditions: No user context. Data only on leaves. B contains OffStreetParking2 without location. C contains OffStreetParking1. D contains OffStreetParking1 without location.
    ...                Registration established: Auxiliary in A to B. Inclusive in A to C. Inclusive in A to D.

    ${entity_id}=    Generate Random Parking Entity Id
    Set Suite Variable    ${entity_id}

    ${response}=    Create Entity    ${offstreet_no_location_payload_filename}    ${entity_id}    broker_url=${b2_url}
    ${response}=    Create Entity    ${offstreet_no_location_payload_filename}    ${entity_id}    broker_url=${broker_B_url}
    Check Response Status Code    201    ${response.status_code}
    ${response}=    Create Entity    ${first_full_offstreet_payload_filename}    ${entity_id}    broker_url=${b3_url}
    ${response}=    Create Entity    ${first_full_offstreet_payload_filename}    ${entity_id}    broker_url=${broker_C_url}
    Check Response Status Code    201    ${response.status_code}
    ${response}=    Create Entity    ${second_full_offstreet_payload_filename}    ${entity_id}    broker_url=${b4_url}
    ${response}=    Create Entity    ${second_full_offstreet_payload_filename}    ${entity_id}    broker_url=${broker_D_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id1}=    Generate Random CSR Id
@@ -75,9 +77,9 @@ Setup Initial Context Source Registrations
    ...    ${registration_id1}
    ...    ${auxiliary_registration_payload_file_path}
    ...    entity_id=${entity_id}
    ...    endpoint=${b2_url}
    ...    endpoint=${broker_B_url}
    ...    mode=auxiliary
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id2}=    Generate Random CSR Id
@@ -86,9 +88,9 @@ Setup Initial Context Source Registrations
    ...    ${registration_id2}
    ...    ${first_inclusive_registration_payload_file_path}
    ...    entity_id=${entity_id}
    ...    endpoint=${b3_url}
    ...    endpoint=${broker_C_url}
    ...    mode=inclusive
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

    ${registration_id3}=    Generate Random CSR Id
@@ -97,14 +99,14 @@ Setup Initial Context Source Registrations
    ...    ${registration_id3}
    ...    ${second_inclusive_registration_payload_file_path}
    ...    entity_id=${entity_id}
    ...    endpoint=${b4_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${b1_url}
    ...    endpoint=${broker_D_url}
    ${response}=    Create Context Source Registration With Return    ${registration_payload}    broker_url=${broker_A_url}
    Check Response Status Code    201    ${response.status_code}

Delete Entities And Delete Registrations
    Delete Context Source Registration    ${registration_id1}    broker_url=${b1_url}
    Delete Context Source Registration    ${registration_id2}    broker_url=${b1_url}
    Delete Context Source Registration    ${registration_id3}    broker_url=${b1_url}
    Delete Entity    ${entity_id}    broker_url=${b2_url}
    Delete Entity    ${entity_id}    broker_url=${b3_url}
    Delete Entity    ${entity_id}    broker_url=${b4_url}
 No newline at end of file
    Delete Context Source Registration    ${registration_id1}    broker_url=${broker_A_url}
    Delete Context Source Registration    ${registration_id2}    broker_url=${broker_A_url}
    Delete Context Source Registration    ${registration_id3}    broker_url=${broker_A_url}
    Delete Entity    ${entity_id}    broker_url=${broker_B_url}
    Delete Entity    ${entity_id}    broker_url=${broker_C_url}
    Delete Entity    ${entity_id}    broker_url=${broker_D_url}
 No newline at end of file
Loading