Loading TP/NGSI-LD/Interoperability/Consumption/Entity/QueryEntities/IOP_CNF_03_01.robot 0 → 100644 +105 −0 Original line number Diff line number Diff line *** Settings *** Documentation Verify that the entities found in b2, b3 and b4 can be queried from b1 via Query. Resource ${EXECDIR}/resources/ApiUtils/ContextInformationConsumption.resource Resource ${EXECDIR}/resources/ApiUtils/ContextInformationProvision.resource Resource ${EXECDIR}/resources/ApiUtils/ContextSourceDiscovery.resource Resource ${EXECDIR}/resources/ApiUtils/ContextSourceRegistration.resource Resource ${EXECDIR}/resources/AssertionUtils.resource Resource ${EXECDIR}/resources/JsonUtils.resource Test Setup Setup Initial Context Source Registrations Test Teardown Delete Entities and Delete Registrations *** Variables *** ${first_offstreet_no_location_payload_filename} interoperability/offstreet-parking1-no-location.jsonld ${second_offstreet_no_location_payload_filename} interoperability/offstreet-parking2-no-location.jsonld ${full_offstreet_payload_filename} interoperability/offstreet-parking1-full.jsonld ${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} *** Test Cases *** IOP_CNF_03_01 Create Entity In B1 And Query Entity In All Brokers [Documentation] Check that entities can be queried from all brokers. [Tags] 6_3 I6_3_3_1 inclusive auxiliary interoperability ${response}= Query Entities entity_types=OffstreetParking broker_url=${b1_url} Check Response Status Code 200 ${response.status_code} &{payload}= Evaluate {i['id']: i for i in ${response.json()}} ${first_parking_payload}= Get From Dictionary ${payload} OffstreetParking:1 ${second_parking_payload}= Get From Dictionary ${payload} OffstreetParking:2 ${response}= Query Entities entity_types=OffstreetParking broker_url=${b2_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} ${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} ${payload}= Evaluate {i['id']: i for i in ${response.json()}} ${expected_parking3}= Get From Dictionary ${payload} OffstreetParking:1 Should Be Equal ${first_parking_payload}[name] ${expected_parking2}[name] Should Be Equal ${first_parking_payload}[location] ${expected_parking2}[location] Should Be Equal ${first_parking_payload}[availableSpotsNumber] ${expected_parking3}[availableSpotsNumber] Should Be Equal ${first_parking_payload}[totalSpotsNumber] ${expected_parking3}[totalSpotsNumber] Should Be Equal ${second_parking_payload} ${expected_parking1} *** Keywords *** Setup Initial Context Source Registrations ${entity_id}= Generate Random Parking Entity Id Set Suite Variable ${first_parking_entity_id} ${response}= Create Entity ${second_offstreet_no_location_payload_filename} ${entity_id} broker_url=${b2_url} Check Response Status Code 201 ${response.status_code} ${response}= Create Entity ${full_offstreet_payload_filename} ${entity_id} broker_url=${b3_url} Check Response Status Code 201 ${response.status_code} ${response}= Create Entity ${first_offstreet_no_location_payload_filename} ${entity_id} broker_url=${b4_url} Check Response Status Code 201 ${response.status_code} ${registration_id1}= Generate Random CSR Id Set Suite Variable ${registration_id1} ${registration_payload}= Prepare Context Source Registration From File ... ${registration_id1} ... ${auxiliary_registration_payload_file_path} ... entity_id=${entity_id} ... endpoint=${b2_url} ... mode=auxiliary ${response}= Create Context Source Registration With Return ${registration_payload} broker_url=${b1_url} Check Response Status Code 201 ${response.status_code} ${registration_id2}= Generate Random CSR Id Set Suite Variable ${registration_id2} ${registration_payload}= Prepare Context Source Registration From File ... ${registration_id2} ... ${first_inclusive_registration_payload_file_path} ... entity_id=${entity_id} ... endpoint=${b3_url} ... mode=inclusive ${response}= Create Context Source Registration With Return ${registration_payload} broker_url=${b1_url} Check Response Status Code 201 ${response.status_code} ${registration_id3}= Generate Random CSR Id Set Suite Variable ${registration_id3} ${registration_payload}= Prepare Context Source Registration From File ... ${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} 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 By Id ${entity_id} broker_url=${b2_url} Delete Entity by Id ${entity_id} broker_url=${b3_url} Delete Entity By Id ${entity_id} broker_url=${b4_url} No newline at end of file data/csourceRegistrations/interoperability/context-source-registration-auxiliary-1.jsonld 0 → 100644 +18 −0 Original line number Diff line number Diff line { "id": "urn:ngsi-ld:ContextSourceRegistration:Auxiliary:1", "type": "ContextSourceRegistration", "information": [ { "entities": [ { "type": "OffStreetParking" } ] } ], "mode": "auxiliary", "endpoint": "xxx", "@context":[ "https://forge.etsi.org/rep/cim/ngsi-ld-test-suite/-/raw/develop/resources/jsonld-contexts/ngsi-ld-test-suite-compound.jsonld" ] } No newline at end of file data/csourceRegistrations/interoperability/context-source-registration-inclusive-1.jsonld 0 → 100644 +19 −0 Original line number Diff line number Diff line { "id": "urn:ngsi-ld:ContextSourceRegistration:Inclusive:1", "type": "ContextSourceRegistration", "information": [ { "entities": [ { "type": "OffStreetParking" } ] } ], "mode": "inclusive", "operations": ["redirectionOps"], "endpoint": "xxx", "@context":[ "https://forge.etsi.org/rep/cim/ngsi-ld-test-suite/-/raw/develop/resources/jsonld-contexts/ngsi-ld-test-suite-compound.jsonld" ] } No newline at end of file Loading
TP/NGSI-LD/Interoperability/Consumption/Entity/QueryEntities/IOP_CNF_03_01.robot 0 → 100644 +105 −0 Original line number Diff line number Diff line *** Settings *** Documentation Verify that the entities found in b2, b3 and b4 can be queried from b1 via Query. Resource ${EXECDIR}/resources/ApiUtils/ContextInformationConsumption.resource Resource ${EXECDIR}/resources/ApiUtils/ContextInformationProvision.resource Resource ${EXECDIR}/resources/ApiUtils/ContextSourceDiscovery.resource Resource ${EXECDIR}/resources/ApiUtils/ContextSourceRegistration.resource Resource ${EXECDIR}/resources/AssertionUtils.resource Resource ${EXECDIR}/resources/JsonUtils.resource Test Setup Setup Initial Context Source Registrations Test Teardown Delete Entities and Delete Registrations *** Variables *** ${first_offstreet_no_location_payload_filename} interoperability/offstreet-parking1-no-location.jsonld ${second_offstreet_no_location_payload_filename} interoperability/offstreet-parking2-no-location.jsonld ${full_offstreet_payload_filename} interoperability/offstreet-parking1-full.jsonld ${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} *** Test Cases *** IOP_CNF_03_01 Create Entity In B1 And Query Entity In All Brokers [Documentation] Check that entities can be queried from all brokers. [Tags] 6_3 I6_3_3_1 inclusive auxiliary interoperability ${response}= Query Entities entity_types=OffstreetParking broker_url=${b1_url} Check Response Status Code 200 ${response.status_code} &{payload}= Evaluate {i['id']: i for i in ${response.json()}} ${first_parking_payload}= Get From Dictionary ${payload} OffstreetParking:1 ${second_parking_payload}= Get From Dictionary ${payload} OffstreetParking:2 ${response}= Query Entities entity_types=OffstreetParking broker_url=${b2_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} ${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} ${payload}= Evaluate {i['id']: i for i in ${response.json()}} ${expected_parking3}= Get From Dictionary ${payload} OffstreetParking:1 Should Be Equal ${first_parking_payload}[name] ${expected_parking2}[name] Should Be Equal ${first_parking_payload}[location] ${expected_parking2}[location] Should Be Equal ${first_parking_payload}[availableSpotsNumber] ${expected_parking3}[availableSpotsNumber] Should Be Equal ${first_parking_payload}[totalSpotsNumber] ${expected_parking3}[totalSpotsNumber] Should Be Equal ${second_parking_payload} ${expected_parking1} *** Keywords *** Setup Initial Context Source Registrations ${entity_id}= Generate Random Parking Entity Id Set Suite Variable ${first_parking_entity_id} ${response}= Create Entity ${second_offstreet_no_location_payload_filename} ${entity_id} broker_url=${b2_url} Check Response Status Code 201 ${response.status_code} ${response}= Create Entity ${full_offstreet_payload_filename} ${entity_id} broker_url=${b3_url} Check Response Status Code 201 ${response.status_code} ${response}= Create Entity ${first_offstreet_no_location_payload_filename} ${entity_id} broker_url=${b4_url} Check Response Status Code 201 ${response.status_code} ${registration_id1}= Generate Random CSR Id Set Suite Variable ${registration_id1} ${registration_payload}= Prepare Context Source Registration From File ... ${registration_id1} ... ${auxiliary_registration_payload_file_path} ... entity_id=${entity_id} ... endpoint=${b2_url} ... mode=auxiliary ${response}= Create Context Source Registration With Return ${registration_payload} broker_url=${b1_url} Check Response Status Code 201 ${response.status_code} ${registration_id2}= Generate Random CSR Id Set Suite Variable ${registration_id2} ${registration_payload}= Prepare Context Source Registration From File ... ${registration_id2} ... ${first_inclusive_registration_payload_file_path} ... entity_id=${entity_id} ... endpoint=${b3_url} ... mode=inclusive ${response}= Create Context Source Registration With Return ${registration_payload} broker_url=${b1_url} Check Response Status Code 201 ${response.status_code} ${registration_id3}= Generate Random CSR Id Set Suite Variable ${registration_id3} ${registration_payload}= Prepare Context Source Registration From File ... ${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} 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 By Id ${entity_id} broker_url=${b2_url} Delete Entity by Id ${entity_id} broker_url=${b3_url} Delete Entity By Id ${entity_id} broker_url=${b4_url} No newline at end of file
data/csourceRegistrations/interoperability/context-source-registration-auxiliary-1.jsonld 0 → 100644 +18 −0 Original line number Diff line number Diff line { "id": "urn:ngsi-ld:ContextSourceRegistration:Auxiliary:1", "type": "ContextSourceRegistration", "information": [ { "entities": [ { "type": "OffStreetParking" } ] } ], "mode": "auxiliary", "endpoint": "xxx", "@context":[ "https://forge.etsi.org/rep/cim/ngsi-ld-test-suite/-/raw/develop/resources/jsonld-contexts/ngsi-ld-test-suite-compound.jsonld" ] } No newline at end of file
data/csourceRegistrations/interoperability/context-source-registration-inclusive-1.jsonld 0 → 100644 +19 −0 Original line number Diff line number Diff line { "id": "urn:ngsi-ld:ContextSourceRegistration:Inclusive:1", "type": "ContextSourceRegistration", "information": [ { "entities": [ { "type": "OffStreetParking" } ] } ], "mode": "inclusive", "operations": ["redirectionOps"], "endpoint": "xxx", "@context":[ "https://forge.etsi.org/rep/cim/ngsi-ld-test-suite/-/raw/develop/resources/jsonld-contexts/ngsi-ld-test-suite-compound.jsonld" ] } No newline at end of file