feat(entity): add TCs for Retrieve Attribute (062_01 fragment, 062_03 errors, 062_05 datasetId)

New Test Cases for Retrieve Attribute, GET /entities/{entityId}/attrs/{attrId} (TS 104-176 7.5.3.1, TS 104-175 10.4.4). Until now the suite did not test this operation.

  • 062_01: the attribute fragment, for a Property and for a second attribute
  • 062_03: 400 for an invalid entity id, 404 for an unknown entity, 404 for an unknown attribute
  • 062_05: datasetId: the instance it names; 404 when the attribute has no default instance and no datasetId is given; 404 for an unknown datasetId
  • 062_06: lang: a LanguageProperty in one language; the whole LanguageProperty without lang
  • 062_07: type: the Entity's type gives 200, another type 404 (TS 104-175 10.4.4.4)

12 Test Cases in TP/NGSI-LD/ContextInformation/Consumption/EntityAttributes/RetrieveAttributeValue/ (TP ids CI/Cons/EA/062_xx), all tagged since_ts104_v1.1.1: the operation has no ETSI GS CIM 009 counterpart. doc/README.md documents that tag form, and statisticsDocumentationData.py keeps the whole release after since_.

Also in the MR:

  • the keyword Retrieve Entity Attribute (resources/ApiUtils/ContextInformationConsumption.resource)
  • the expectation files in data/entities/expectations/
  • the documentation-generator entries (doc/analysis/requests.py, generaterobotdata.py)

Scope: this MR covers 7.5.3.1, the attribute fragment. 062_02 and 062_04 are kept free for 7.6.3.1 (GET .../attrs/{attrId}/value), which comes in the next MR and reuses the same helpers. Set Attribute Value (063) follows after that. Not covered here: join/joinLevel (they exist only on 7.5.3.1, so they need a keyword of their own) and the EntityMap parameters.

The dry run (12/12) and the documentation generator are clean. Against a broker: 11 of 12 pass. 062_07_02 fails because that broker ignores type on this route, which is a broker bug.

MR 4 of the plan: https://famzang.com/ttf/ngsi-ld-suite-plan.html

Edited by Ken Zangelin

Merge request reports

Loading
Loading