{ "tp_id": "TP/NGSI-LD/CI/Prov/EA/012_02", "test_objective": "Check that you cannot perform a partial update on an entity attribute with invalid/missing ids", "reference": "ETSI GS CIM 009 V1.3.1 [], clause 5.6.4", "config_id": "", "parent_release": "v1.3.1", "clauses": [ "5.6.4" ], "pics_selection": "", "keywords": [], "teardown": "None", "initial_condition": "with {\n the SUT being in the \"initial state\" and\n the SUT containing an initial Entity ${entity} \n with an id set to ${entityId} \n}", "test_cases": [ { "name": "012_02_01 Make a partial attribute update if the Entity Id is not present", "permutation_tp_id": "TP/NGSI-LD/CI/Prov/EA/012_02_01", "doc": "Check that you cannot perform a partial update on an entity attribute with invalid/missing ids", "tags": [ "ea-partial-update", "5_6_4" ], "setup": "Setup Initial Entity", "teardown": "Delete Initial Entity", "template": "Update Attributes", "then": "then {\n the SUT sends a valid Response for the operations:\n Partial Update Entity Attributes with Response Status Code set to 400 and\n Partial Update Entity Attributes with Response Body containing the type 'https://uri.etsi.org/ngsi-ld/errors/BadRequestData' and\n Partial Update Entity Attributes with Response body containing 'title' element\n}", "when": "when {\n the SUT receives a Request from the client containing:\n URL set to '/ngsi-ld/v1/entities/{entityId}/attrs/{attributeId}'\n method set to 'PATCH'\n Request Partial Update Entity Attributes and\n Query Parameter: entityId set to '${EMPTY}' and\n Query Parameter: AttributeId set to 'speed' and\n Query Parameter: fragment_filename set to 'vehicle-speed-equal-datasetid-fragment.jsonld' and\n Query Parameter: content_type set to 'application/ld+json'\n}", "http_verb": "PATCH", "endpoint": "entities/{entityId}/attrs/{attributeId}" }, { "name": "012_02_02 Make a partial attribute update if the Entity Id is not a valid URI", "permutation_tp_id": "TP/NGSI-LD/CI/Prov/EA/012_02_02", "doc": "Check that you cannot perform a partial update on an entity attribute with invalid/missing ids", "tags": [ "ea-partial-update", "5_6_4" ], "setup": "Setup Initial Entity", "teardown": "Delete Initial Entity", "template": "Update Attributes", "then": "then {\n the SUT sends a valid Response for the operations:\n Partial Update Entity Attributes with Response Status Code set to 400 and\n Partial Update Entity Attributes with Response Body containing the type 'https://uri.etsi.org/ngsi-ld/errors/BadRequestData' and\n Partial Update Entity Attributes with Response body containing 'title' element\n}", "when": "when {\n the SUT receives a Request from the client containing:\n URL set to '/ngsi-ld/v1/entities/{entityId}/attrs/{attributeId}'\n method set to 'PATCH'\n Request Partial Update Entity Attributes and\n Query Parameter: entityId set to 'thisisaninvaliduri' and\n Query Parameter: AttributeId set to 'speed' and\n Query Parameter: fragment_filename set to 'vehicle-speed-equal-datasetid-fragment.jsonld' and\n Query Parameter: content_type set to 'application/ld+json'\n}", "http_verb": "PATCH", "endpoint": "entities/{entityId}/attrs/{attributeId}" }, { "name": "012_02_03 Make a partial attribute update if the Attribute type does not match", "permutation_tp_id": "TP/NGSI-LD/CI/Prov/EA/012_02_03", "doc": "Check that you cannot perform a partial update on an entity attribute with invalid/missing ids", "tags": [ "ea-partial-update", "5_6_4" ], "setup": "Setup Initial Entity", "teardown": "Delete Initial Entity", "template": "Update Attributes", "then": "then {\n the SUT sends a valid Response for the operations:\n Partial Update Entity Attributes with Response Status Code set to 400 and\n Partial Update Entity Attributes with Response Body containing the type 'https://uri.etsi.org/ngsi-ld/errors/BadRequestData' and\n Partial Update Entity Attributes with Response body containing 'title' element\n}", "when": "when {\n the SUT receives a Request from the client containing:\n URL set to '/ngsi-ld/v1/entities/{entityId}/attrs/{attributeId}'\n method set to 'PATCH'\n Request Partial Update Entity Attributes and\n Query Parameter: entityId set to '${valid_entity_id}' and\n Query Parameter: AttributeId set to 'speed' and\n Query Parameter: fragment_filename set to 'vehicle-speed-equal-datasetid-different-type-fragment.jsonld' and\n Query Parameter: content_type set to 'application/ld+json'\n}", "http_verb": "PATCH", "endpoint": "entities/{entityId}/attrs/{attributeId}" }, { "name": "012_02_04 Make a partial attribute update if the entity fragment is empty", "permutation_tp_id": "TP/NGSI-LD/CI/Prov/EA/012_02_04", "doc": "Check that you cannot perform a partial update on an entity attribute with invalid/missing ids", "tags": [ "ea-partial-update", "5_6_4" ], "setup": "Setup Initial Entity", "teardown": "Delete Initial Entity", "template": "Update Attributes", "then": "then {\n the SUT sends a valid Response for the operations:\n Partial Update Entity Attributes with Response Status Code set to 400 and\n Partial Update Entity Attributes with Response Body containing the type 'https://uri.etsi.org/ngsi-ld/errors/BadRequestData' and\n Partial Update Entity Attributes with Response body containing 'title' element\n}", "when": "when {\n the SUT receives a Request from the client containing:\n URL set to '/ngsi-ld/v1/entities/{entityId}/attrs/{attributeId}'\n method set to 'PATCH'\n Request Partial Update Entity Attributes and\n Query Parameter: entityId set to '${valid_entity_id}' and\n Query Parameter: AttributeId set to 'speed' and\n Query Parameter: fragment_filename set to 'empty-fragment.json' and\n Query Parameter: content_type set to 'application/ld+json'\n}", "http_verb": "PATCH", "endpoint": "entities/{entityId}/attrs/{attributeId}" } ], "permutations": [ "when" ], "robotpath": "ContextInformation/Provision/EntityAttributes/PartialAttributeUpdate", "robotfile": "012_02" }