stellio-hub / stellio-context-broker

Stellio is an NGSI-LD compatible context broker
https://stellio.readthedocs.io
Apache License 2.0
25 stars 11 forks source link

feat: add support for `VocabProperty` #1154

Closed bobeal closed 1 month ago

github-actions[bot] commented 2 months ago

Test Results

   58 files  ± 0     58 suites  ±0   1m 23s :stopwatch: +4s   963 tests +10    963 :white_check_mark: +10  0 :zzz: ±0  0 :x: ±0  1 002 runs  +10  1 002 :white_check_mark: +10  0 :zzz: ±0  0 :x: ±0 

Results for commit d4785063. ± Comparison against base commit a40483bf.

This pull request removes 170 and adds 40 tests. Note that renamed tests count towards both. ``` …, withTemporalValues=true, withAudit=false, expectation={ "@type": "@json", … "@value": "/A/B" "@value": "/C/D" "@value": 20 "… { "@type": "https://uri.etsi.org/ngsi-ld/DateTime", "@value": "2020-03-25T08:29:17.965206Z" … ``` ``` com.egm.stellio.search.service.AttributeInstanceServiceTests ‑ it should modify attribute instance for a VocabProperty property() com.egm.stellio.search.util.PatchAttributeTests ‑ [1] source={ "attribute": { "type": "Property", "value": 12.0, "observedAt": "2024-04-14T12:34:56Z" } }, target={ "attribute": { "type": "Property", "value": 12.2, "unitCode": "GRM" } }, expected={ "attribute": { "type": "Property", "value": 12.2, "unitCode": "GRM", "observedAt": "2024-04-14T12:34:56Z" } } com.egm.stellio.search.util.PatchAttributeTests ‑ [1] source={ "attribute": { "type": "Property", "value": 12.0, "observedAt": "2024-04-14T12:34:56Z", "subAttribute": { "type": "Property", "value": "subAttribute" } } }, target={ "attribute": { "type": "Property", "value": 12.2, "unitCode": "GRM", "subAttribute": { "type": "Property", "value": "newSubAttributeValue" } } }, expected={ "attribute": { "type": "Property", "value": 12.2, "unitCode": "GRM", "observedAt": "2024-04-14T12:34:56Z", "subAttribute": { "type": "Property", "value": "newSubAttributeValue" } } } com.egm.stellio.search.util.PatchAttributeTests ‑ [2] source={ "attribute": { "type": "Property", "value": { "en": "car", "fr": "voiture" } } }, target={ "attribute": { "type": "Property", "value": { "fr": "vélo", "es": "bicicleta" } } }, expected={ "attribute": { "type": "Property", "value": { "en": "car", "fr": "vélo", "es": "bicicleta" } } } com.egm.stellio.search.util.PatchAttributeTests ‑ [2] source={ "incoming": { "type": "JsonProperty", "json": { "id": 1, "b": null, "c": 12.4 }, "observedAt": "2022-12-24T14:01:22.066Z", "subAttribute": { "type": "Property", "value": "subAttribute" } } }, target={ "incoming": { "type": "JsonProperty", "json": { "id": 2, "b": "something" }, "observedAt": "2023-12-24T14:01:22.066Z" } }, expected={ "incoming": { "type": "JsonProperty", "json": { "id": 2, "b": "something" }, "observedAt": "2023-12-24T14:01:22.066Z", "subAttribute": { "type": "Property", "value": "subAttribute" } } } com.egm.stellio.search.util.PatchAttributeTests ‑ [3] source={ "attribute": { "type": "Property", "value": [ "car", "voiture" ] } }, target={ "attribute": { "type": "Property", "value": [ "vélo", "bicicleta" ] } }, expected={ "attribute": { "type": "Property", "value": [ "vélo", "bicicleta" ] } } com.egm.stellio.search.util.PatchAttributeTests ‑ [3] source={ "attribute": { "type": "VocabProperty", "vocab": "stellio" } }, target={ "attribute": { "type": "VocabProperty", "vocab": "egm" } }, expected={ "attribute": { "type": "VocabProperty", "vocab": "egm" } } com.egm.stellio.search.util.PatchAttributeTests ‑ [4] source={ "attribute": { "type": "Relationship", "object": "urn:ngsi-ld:Entity:01" } }, target={ "attribute": { "type": "Relationship", "object": "urn:ngsi-ld:Entity:02" } }, expected={ "attribute": { "type": "Relationship", "object": "urn:ngsi-ld:Entity:02" } } com.egm.stellio.search.util.PatchAttributeTests ‑ [5] source={ "attribute": { "type": "LanguageProperty", "languageMap": { "en": "train", "fr": "train" } } }, target={ "attribute": { "type": "LanguageProperty", "languageMap": { "fr": "TGV", "es": "tren" } } }, expected={ "attribute": { "type": "LanguageProperty", "languageMap": { "en": "train", "fr": "TGV", "es": "tren" } } } com.egm.stellio.search.util.PatchAttributeTests ‑ [6] source={ "incoming": { "type": "JsonProperty", "json": { "a": 1, "b": "thing" } } }, target={ "incoming": { "type": "JsonProperty", "json": { "a": 2, "c": "other thing" } } }, expected={ "incoming": { "type": "JsonProperty", "json": { "a": 2, "b": "thing", "c": "other thing" } } } … ```

:recycle: This comment has been updated with latest results.

sonarcloud[bot] commented 2 months ago

Quality Gate Passed Quality Gate passed

Issues
1 New issue
0 Accepted issues

Measures
0 Security Hotspots
82.6% Coverage on New Code
0.0% Duplication on New Code

See analysis details on SonarCloud