iotagent-node-lib 2.15.1 → 2.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +17 -1
- package/.readthedocs.yml +7 -0
- package/CHANGES_NEXT_RELEASE +0 -1
- package/README.md +1 -0
- package/doc/Contribution.md +60 -1
- package/doc/advanced-topics.md +136 -14
- package/doc/api.md +38 -22
- package/doc/apiary/iotagent.apib +1 -3
- package/doc/architecture.md +2 -2
- package/doc/config-basic-example.js +0 -1
- package/doc/deprecated.md +2 -2
- package/doc/development.md +13 -6
- package/doc/expressionLanguage.md +519 -277
- package/doc/getting-started.md +0 -1
- package/doc/howto.md +13 -17
- package/doc/installationguide.md +67 -69
- package/doc/usermanual.md +48 -16
- package/docker/Mosquitto/Dockerfile +4 -9
- package/docker/Mosquitto/README.md +2 -0
- package/docker/Mosquitto/startMosquitto.sh +18 -1
- package/lib/command/commandLine.js +1 -1
- package/lib/commonConfig.js +5 -14
- package/lib/errors.js +0 -16
- package/lib/fiware-iotagent-lib.js +5 -0
- package/lib/jexlTranformsMap.js +71 -0
- package/lib/model/Command.js +1 -1
- package/lib/model/Device.js +5 -2
- package/lib/model/Group.js +20 -2
- package/lib/model/dbConn.js +7 -1
- package/lib/plugins/attributeAlias.js +6 -13
- package/lib/plugins/bidirectionalData.js +2 -27
- package/lib/plugins/expressionParser.js +41 -17
- package/lib/plugins/expressionPlugin.js +21 -27
- package/lib/plugins/jexlParser.js +71 -67
- package/lib/plugins/multiEntity.js +68 -147
- package/lib/plugins/pluginUtils.js +12 -48
- package/lib/plugins/timestampProcessPlugin.js +1 -46
- package/lib/request-shim.js +111 -0
- package/lib/services/common/domain.js +2 -2
- package/lib/services/common/genericMiddleware.js +6 -2
- package/lib/services/common/iotManagerService.js +1 -1
- package/lib/services/common/securityServiceKeystone.js +1 -1
- package/lib/services/common/securityServiceOAuth2.js +3 -2
- package/lib/services/devices/deviceRegistryMongoDB.js +29 -22
- package/lib/services/devices/deviceService.js +56 -33
- package/lib/services/devices/devices-NGSI-LD.js +42 -14
- package/lib/services/devices/devices-NGSI-mixed.js +3 -3
- package/lib/services/devices/devices-NGSI-v2.js +48 -24
- package/lib/services/devices/registrationUtils.js +1 -134
- package/lib/services/groups/groupRegistryMemory.js +2 -0
- package/lib/services/groups/groupRegistryMongoDB.js +58 -76
- package/lib/services/groups/groupService.js +1 -1
- package/lib/services/ngsi/entities-NGSI-LD.js +205 -124
- package/lib/services/ngsi/entities-NGSI-v2.js +142 -32
- package/lib/services/ngsi/ngsiService.js +4 -6
- package/lib/services/ngsi/ngsiUtils.js +0 -21
- package/lib/services/ngsi/subscription-NGSI-LD.js +14 -5
- package/lib/services/ngsi/subscriptionService.js +1 -4
- package/lib/services/northBound/contextServer-NGSI-LD.js +7 -2
- package/lib/services/northBound/contextServer-NGSI-v2.js +25 -13
- package/lib/services/northBound/contextServer.js +1 -4
- package/lib/services/northBound/contextServerUtils.js +0 -81
- package/lib/services/northBound/deviceProvisioningServer.js +36 -9
- package/lib/services/northBound/northboundServer.js +2 -0
- package/lib/services/northBound/restUtils.js +2 -39
- package/lib/templates/updateDevice.json +4 -0
- package/lib/templates/updateDeviceLax.json +4 -0
- package/package.json +13 -13
- package/test/tools/utils.js +2 -0
- package/test/unit/examples/deviceProvisioningRequests/provisionAnotherDevice.json +1 -1
- package/test/unit/examples/deviceProvisioningRequests/provisionDeviceMissingParameters.json +1 -1
- package/test/unit/examples/deviceProvisioningRequests/provisionDuplicatedDev.json +1 -1
- package/test/unit/examples/deviceProvisioningRequests/provisionFullDevice.json +1 -1
- package/test/unit/examples/deviceProvisioningRequests/provisionNewDeviceMalformed1.json +1 -1
- package/test/unit/examples/groupProvisioningRequests/multipleGroupsCreation.json +1 -1
- package/test/unit/examples/iotamRequests/registrationEmpty.json +1 -1
- package/test/unit/examples/iotamRequests/registrationWithGroups.json +2 -2
- package/test/unit/examples/iotamRequests/registrationWithGroupsWithoutCB.json +2 -2
- package/test/unit/examples/iotamRequests/registrationWithStaticGroups.json +2 -2
- package/test/unit/expressions/jexlExpression-test.js +119 -0
- package/test/unit/general/config-multi-core-test.js +1 -1
- package/test/unit/general/contextBrokerKeystoneSecurityAccess-test.js +30 -77
- package/test/unit/general/deviceService-test.js +19 -35
- package/test/unit/general/loglevel-api_test.js +8 -13
- package/test/unit/general/migration-test.js +1 -0
- package/test/unit/general/startup-test.js +3 -2
- package/test/unit/general/statistics-persistence_test.js +2 -2
- package/test/unit/general/statistics-service_test.js +2 -2
- package/test/unit/lazyAndCommands/commandRegistry_test.js +18 -18
- package/test/unit/memoryRegistry/deviceRegistryMemory_test.js +16 -24
- package/test/unit/mongodb/mongodb-connectionoptions-test.js +2 -2
- package/test/unit/mongodb/mongodb-group-registry-test.js +11 -11
- package/test/unit/mongodb/mongodb-registry-test.js +55 -131
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent1.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent2.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent4.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgentCommands.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDevice.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDevice2.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup2.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup3.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/updateCommands1.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/updateIoTAgent1.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/updateIoTAgent2.json +1 -1
- package/test/unit/ngsi-ld/examples/contextAvailabilityRequests/updateIoTAgent3.json +1 -1
- package/test/unit/ngsi-ld/examples/contextRequests/createMinimumProvisionedDevice.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/createProvisionedDevice.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/createProvisionedDeviceMultientity.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/createProvisionedDeviceWithGroupAndStatic.json +0 -14
- package/test/unit/ngsi-ld/examples/contextRequests/createProvisionedDeviceWithGroupAndStatic2.json +0 -14
- package/test/unit/ngsi-ld/examples/contextRequests/createProvisionedDeviceWithGroupAndStatic3.json +1 -15
- package/test/unit/ngsi-ld/examples/contextRequests/createTimeInstantMinimumDevice.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextAliasPlugin6.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextAutocast5.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin12a.json +7 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin13.json +13 -13
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin16.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin17.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin1a.json +18 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin29.json +18 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin31.json +15 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin32.json +17 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin33.json +18 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin34.json +17 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin4a.json +36 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin5.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin7.json +16 -16
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin8a.json +18 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextGeoproperties3.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextMultientityPlugin15.json +25 -0
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextMultientityTimestampPlugin1.json +6 -6
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextMultientityTimestampPlugin2.json +3 -3
- package/test/unit/ngsi-ld/examples/contextRequests/updateProvisionActiveAttributes1.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateProvisionCommands1.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateProvisionDeviceStatic.json +0 -7
- package/test/unit/ngsi-ld/examples/contextRequests/updateProvisionMinimumDevice.json +0 -7
- package/test/unit/ngsi-ld/examples/subscriptionRequests/bidirectionalSubscriptionRequest.json +20 -17
- package/test/unit/ngsi-ld/examples/subscriptionRequests/simpleSubscriptionRequest.json +18 -15
- package/test/unit/ngsi-ld/examples/subscriptionRequests/simpleSubscriptionRequest2.json +18 -15
- package/test/unit/ngsi-ld/expressions/expressionBasedTransformations-test.js +21 -21
- package/test/unit/ngsi-ld/expressions/jexlBasedTransformations-test.js +1018 -0
- package/test/unit/ngsi-ld/general/config-jsonld-contexts-test.js +2 -2
- package/test/unit/ngsi-ld/general/contextBrokerOAuthSecurityAccess-test.js +24 -24
- package/test/unit/ngsi-ld/general/deviceService-test.js +7 -7
- package/test/unit/ngsi-ld/general/https-support-test.js +14 -13
- package/test/unit/ngsi-ld/general/iotam-autoregistration-test.js +8 -7
- package/test/unit/ngsi-ld/general/startup-test.js +2 -1
- package/test/unit/ngsi-ld/lazyAndCommands/active-devices-attribute-update-test.js +10 -8
- package/test/unit/ngsi-ld/lazyAndCommands/command-test.js +11 -12
- package/test/unit/ngsi-ld/lazyAndCommands/lazy-devices-test.js +25 -29
- package/test/unit/ngsi-ld/lazyAndCommands/polling-commands-test.js +16 -15
- package/test/unit/ngsi-ld/ngsiService/active-devices-test.js +18 -17
- package/test/unit/ngsi-ld/ngsiService/autocast-test.js +13 -12
- package/test/unit/ngsi-ld/ngsiService/geoproperties-test.js +10 -9
- package/test/unit/ngsi-ld/ngsiService/staticAttributes-test.js +3 -3
- package/test/unit/ngsi-ld/ngsiService/subscriptions-test.js +25 -24
- package/test/unit/ngsi-ld/plugins/alias-plugin_test.js +13 -12
- package/test/unit/ngsi-ld/plugins/bidirectional-plugin_test.js +27 -26
- package/test/unit/ngsi-ld/plugins/compress-timestamp-plugin_test.js +5 -5
- package/test/unit/ngsi-ld/plugins/event-plugin_test.js +3 -3
- package/test/unit/ngsi-ld/plugins/multientity-plugin_test.js +75 -14
- package/test/unit/ngsi-ld/plugins/timestamp-processing-plugin_test.js +3 -3
- package/test/unit/ngsi-ld/provisioning/device-provisioning-api_test.js +54 -53
- package/test/unit/ngsi-ld/provisioning/device-registration_test.js +20 -19
- package/test/unit/ngsi-ld/provisioning/device-update-registration_test.js +23 -22
- package/test/unit/ngsi-ld/provisioning/listProvisionedDevices-test.js +58 -70
- package/test/unit/ngsi-ld/provisioning/provisionDeviceMultientity-test.js +8 -7
- package/test/unit/ngsi-ld/provisioning/removeProvisionedDevice-test.js +19 -19
- package/test/unit/ngsi-ld/provisioning/singleConfigurationMode-test.js +18 -20
- package/test/unit/ngsi-ld/provisioning/updateProvisionedDevices-test.js +43 -49
- package/test/unit/ngsi-mixed/provisioning/ngsi-versioning-test.js +16 -14
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerIoTAgent1.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerIoTAgent2.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerIoTAgent3.json +19 -0
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerIoTAgent4.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerIoTAgent5.json +19 -0
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerIoTAgentCommands.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerProvisionedDevice.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerProvisionedDevice2.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup2.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup3.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/updateCommands1.json +3 -3
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/updateIoTAgent1.json +3 -3
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/updateIoTAgent2.json +1 -1
- package/test/unit/ngsiv2/examples/contextAvailabilityRequests/updateIoTAgent3.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin1.json +17 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin11.json +5 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin12.json +2 -2
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin15.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin16.json +14 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin17.json +14 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin18.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin19.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin2.json +13 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin20.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin21.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin22.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin23.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin24.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin25.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin26.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin27.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin28.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin29.json +22 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin3.json +5 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin30.json +6 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin31.json +18 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin32.json +16 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin33.json +22 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin34.json +12 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin4.json +12 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin5.json +5 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin6.json +5 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin7.json +5 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin8.json +17 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextExpressionPlugin9.json +5 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMiddleware1.json +10 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMiddleware2.json +10 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin1.json +2 -2
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin10.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin11.json +13 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin12.json +33 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin13.json +33 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin14.json +33 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin15.json +25 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin16.json +25 -0
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin2.json +2 -2
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin3.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin4.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin5.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin6.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin7.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin8.json +2 -2
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityPlugin9.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin1.json +8 -8
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin2.json +4 -4
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin3.json +1 -1
- package/test/unit/ngsiv2/examples/contextRequests/updateContextMultientityTimestampPlugin4.json +2 -2
- package/test/unit/ngsiv2/examples/contextRequests/updateProvisionDevice.json +20 -0
- package/test/unit/ngsiv2/examples/subscriptionRequests/bidirectionalSubscriptionRequest.json +1 -1
- package/test/unit/ngsiv2/examples/subscriptionRequests/simpleSubscriptionRequest.json +1 -1
- package/test/unit/ngsiv2/examples/subscriptionRequests/simpleSubscriptionRequest2.json +1 -1
- package/test/unit/ngsiv2/expressions/expressionBasedTransformations-test.js +93 -60
- package/test/unit/ngsiv2/expressions/expressionCombinedTransformations-test.js +16 -16
- package/test/unit/ngsiv2/expressions/jexlBasedTransformations-test.js +548 -164
- package/test/unit/ngsiv2/general/contextBrokerOAuthSecurityAccess-test.js +34 -33
- package/test/unit/ngsiv2/general/deviceService-test.js +15 -14
- package/test/unit/ngsiv2/general/https-support-test.js +14 -13
- package/test/unit/ngsiv2/general/iotam-autoregistration-test.js +8 -7
- package/test/unit/ngsiv2/general/startup-test.js +2 -1
- package/test/unit/ngsiv2/lazyAndCommands/active-devices-attribute-update-test.js +9 -7
- package/test/unit/ngsiv2/lazyAndCommands/command-test.js +13 -12
- package/test/unit/ngsiv2/lazyAndCommands/lazy-devices-test.js +323 -51
- package/test/unit/ngsiv2/lazyAndCommands/polling-commands-test.js +22 -20
- package/test/unit/ngsiv2/ngsiService/active-devices-test.js +114 -26
- package/test/unit/ngsiv2/ngsiService/autocast-test.js +16 -16
- package/test/unit/ngsiv2/ngsiService/geoproperties-test.js +39 -38
- package/test/unit/{ngsiService → ngsiv2/ngsiService}/queryDeviceInformationInCb-test.js +25 -54
- package/test/unit/ngsiv2/ngsiService/staticAttributes-test.js +5 -5
- package/test/unit/ngsiv2/ngsiService/subscriptions-test.js +25 -24
- package/test/unit/ngsiv2/plugins/alias-plugin_test.js +22 -22
- package/test/unit/ngsiv2/plugins/bidirectional-plugin_test.js +27 -26
- package/test/unit/ngsiv2/plugins/compress-timestamp-plugin_test.js +7 -7
- package/test/unit/ngsiv2/plugins/event-plugin_test.js +4 -4
- package/test/unit/ngsiv2/plugins/multientity-plugin_test.js +549 -24
- package/test/unit/ngsiv2/plugins/timestamp-processing-plugin_test.js +4 -4
- package/test/unit/{plugins → ngsiv2/plugins}/translation-inPlugins_test.js +25 -25
- package/test/unit/{provisioning → ngsiv2/provisioning}/device-group-api-test.js +44 -75
- package/test/unit/{provisioning/device-group-utils_test.js → ngsiv2/provisioning/device-group-utils-test.js} +15 -14
- package/test/unit/ngsiv2/provisioning/device-provisioning-api_test.js +74 -73
- package/test/unit/ngsiv2/provisioning/device-registration_test.js +20 -19
- package/test/unit/ngsiv2/provisioning/device-update-registration_test.js +30 -29
- package/test/unit/ngsiv2/provisioning/listProvisionedDevices-test.js +58 -69
- package/test/unit/ngsiv2/provisioning/provisionDeviceMultientity-test.js +8 -7
- package/test/unit/ngsiv2/provisioning/removeProvisionedDevice-test.js +19 -19
- package/test/unit/ngsiv2/provisioning/singleConfigurationMode-test.js +18 -19
- package/test/unit/ngsiv2/provisioning/updateProvisionedDevices-test.js +49 -52
- package/test/unit/plugins/capture-configuration-inPlugins_test.js +6 -4
- package/test/unit/plugins/capture-provision-inPlugins_test.js +13 -23
- package/.nyc_output/016aca19-69bf-4681-9b41-2835c5131681.json +0 -1
- package/.nyc_output/processinfo/016aca19-69bf-4681-9b41-2835c5131681.json +0 -1
- package/.nyc_output/processinfo/index.json +0 -1
- package/lib/services/devices/devices-NGSI-v1.js +0 -293
- package/lib/services/devices/registrationUtils.js_avega +0 -589
- package/lib/services/ngsi/entities-NGSI-v1.js +0 -300
- package/lib/services/ngsi/subscription-NGSI-v1.js +0 -234
- package/lib/services/northBound/contextServer-NGSI-v1.js +0 -526
- package/lib/templates/notificationTemplateNgsi1.json +0 -75
- package/lib/templates/updateContextNgsi1.json +0 -50
- package/test/unit/examples/contextAvailabilityRequests/registerIoTAgent1.json +0 -21
- package/test/unit/examples/contextAvailabilityRequests/registerIoTAgent2.json +0 -21
- package/test/unit/examples/contextAvailabilityRequests/registerIoTAgent3.json +0 -25
- package/test/unit/examples/contextAvailabilityRequests/registerIoTAgent4.json +0 -22
- package/test/unit/examples/contextAvailabilityRequests/registerIoTAgentAttributeUpdates.json +0 -16
- package/test/unit/examples/contextAvailabilityRequests/registerIoTAgentCommands.json +0 -21
- package/test/unit/examples/contextAvailabilityRequests/registerNewDevice1.json +0 -21
- package/test/unit/examples/contextAvailabilityRequests/registerNewDevice2.json +0 -21
- package/test/unit/examples/contextAvailabilityRequests/registerProvisionedDevice.json +0 -25
- package/test/unit/examples/contextAvailabilityRequests/registerProvisionedDevice2.json +0 -21
- package/test/unit/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup.json +0 -33
- package/test/unit/examples/contextAvailabilityRequests/registerProvisionedDeviceWithGroup2.json +0 -33
- package/test/unit/examples/contextAvailabilityRequests/unregisterDevice1.json +0 -22
- package/test/unit/examples/contextAvailabilityRequests/unregisterDevice3.json +0 -26
- package/test/unit/examples/contextAvailabilityRequests/unregisterProvisionedDevice.json +0 -26
- package/test/unit/examples/contextAvailabilityRequests/updateCommands1.json +0 -22
- package/test/unit/examples/contextAvailabilityRequests/updateIoTAgent1.json +0 -22
- package/test/unit/examples/contextAvailabilityRequests/updateIoTAgent2.json +0 -26
- package/test/unit/examples/contextAvailabilityRequests/updateIoTAgent3.json +0 -22
- package/test/unit/examples/contextAvailabilityResponses/registerIoTAgent1Failed.json +0 -8
- package/test/unit/examples/contextAvailabilityResponses/registerIoTAgent1Success.json +0 -4
- package/test/unit/examples/contextAvailabilityResponses/registerNewDevice1Success.json +0 -4
- package/test/unit/examples/contextAvailabilityResponses/registerNewDevice2Success.json +0 -4
- package/test/unit/examples/contextAvailabilityResponses/registerProvisionedDeviceSuccess.json +0 -4
- package/test/unit/examples/contextAvailabilityResponses/unregisterDevice1Failed.json +0 -8
- package/test/unit/examples/contextAvailabilityResponses/unregisterDevice1Success.json +0 -4
- package/test/unit/examples/contextAvailabilityResponses/updateCommands1Success.json +0 -4
- package/test/unit/examples/contextAvailabilityResponses/updateIoTAgent1Success.json +0 -6
- package/test/unit/examples/contextProviderResponses/queryInformationResponse.json +0 -22
- package/test/unit/examples/contextProviderResponses/queryInformationResponseEmptyAttributes.json +0 -22
- package/test/unit/examples/contextProviderResponses/queryInformationStaticAttributesResponse.json +0 -27
- package/test/unit/examples/contextProviderResponses/updateInformationResponse.json +0 -22
- package/test/unit/examples/contextProviderResponses/updateInformationResponse2.json +0 -22
- package/test/unit/examples/contextRequests/contextSubscriptionRequest.json +0 -20
- package/test/unit/examples/contextRequests/contextSubscriptionRequest2.json +0 -20
- package/test/unit/examples/contextRequests/createBidirectionalDevice.json +0 -17
- package/test/unit/examples/contextRequests/createDatetimeProvisionedDevice.json +0 -17
- package/test/unit/examples/contextRequests/createGeopointProvisionedDevice.json +0 -17
- package/test/unit/examples/contextRequests/createMinimumProvisionedDevice.json +0 -17
- package/test/unit/examples/contextRequests/createProvisionedDevice.json +0 -32
- package/test/unit/examples/contextRequests/createProvisionedDeviceMultientity.json +0 -32
- package/test/unit/examples/contextRequests/createProvisionedDeviceWithGroup.json +0 -47
- package/test/unit/examples/contextRequests/createProvisionedDeviceWithGroupAndStatic.json +0 -52
- package/test/unit/examples/contextRequests/createProvisionedDeviceWithGroupAndStatic2.json +0 -52
- package/test/unit/examples/contextRequests/createTimeinstantDevice.json +0 -17
- package/test/unit/examples/contextRequests/queryContext1.json +0 -13
- package/test/unit/examples/contextRequests/queryContext2.json +0 -13
- package/test/unit/examples/contextRequests/queryContextAliasPlugin1.json +0 -10
- package/test/unit/examples/contextRequests/queryContextCompressTimestamp1.json +0 -13
- package/test/unit/examples/contextRequests/updateActiveAttributes.json +0 -11
- package/test/unit/examples/contextRequests/updateContext1.json +0 -22
- package/test/unit/examples/contextRequests/updateContext2.json +0 -22
- package/test/unit/examples/contextRequests/updateContext3.json +0 -17
- package/test/unit/examples/contextRequests/updateContext3WithStatic.json +0 -22
- package/test/unit/examples/contextRequests/updateContext4.json +0 -22
- package/test/unit/examples/contextRequests/updateContext5.json +0 -19
- package/test/unit/examples/contextRequests/updateContextAliasPlugin.json +0 -22
- package/test/unit/examples/contextRequests/updateContextAliasPlugin2.json +0 -17
- package/test/unit/examples/contextRequests/updateContextAppendMode.json +0 -22
- package/test/unit/examples/contextRequests/updateContextCommandError.json +0 -22
- package/test/unit/examples/contextRequests/updateContextCommandExpired.json +0 -22
- package/test/unit/examples/contextRequests/updateContextCommandFinish.json +0 -22
- package/test/unit/examples/contextRequests/updateContextCommandStatus.json +0 -17
- package/test/unit/examples/contextRequests/updateContextCompressTimestamp1.json +0 -22
- package/test/unit/examples/contextRequests/updateContextCompressTimestamp2.json +0 -29
- package/test/unit/examples/contextRequests/updateContextExpressionPlugin1.json +0 -17
- package/test/unit/examples/contextRequests/updateContextExpressionPlugin2.json +0 -27
- package/test/unit/examples/contextRequests/updateContextExpressionPlugin3.json +0 -17
- package/test/unit/examples/contextRequests/updateContextExpressionPlugin4.json +0 -17
- package/test/unit/examples/contextRequests/updateContextExpressionPlugin5.json +0 -27
- package/test/unit/examples/contextRequests/updateContextMiddleware1.json +0 -22
- package/test/unit/examples/contextRequests/updateContextMultiEntityPlugin3.json +0 -35
- package/test/unit/examples/contextRequests/updateContextMultientityPlugin1.json +0 -30
- package/test/unit/examples/contextRequests/updateContextMultientityPlugin2.json +0 -30
- package/test/unit/examples/contextRequests/updateContextProcessTimestamp1.json +0 -29
- package/test/unit/examples/contextRequests/updateContextStaticAttributes.json +0 -22
- package/test/unit/examples/contextRequests/updateContextTimestamp.json +0 -41
- package/test/unit/examples/contextRequests/updateContextTimestampOverride.json +0 -22
- package/test/unit/examples/contextRequests/updateContextTimestampOverrideWithoutMilis.json +0 -22
- package/test/unit/examples/contextRequests/updateContextTimestampTimezone.json +0 -41
- package/test/unit/examples/contextRequests/updateProvisionActiveAttributes1.json +0 -17
- package/test/unit/examples/contextRequests/updateProvisionCommands1.json +0 -27
- package/test/unit/examples/contextRequests/updateProvisionDeviceStatic.json +0 -38
- package/test/unit/examples/contextRequests/updateProvisionMinimumDevice.json +0 -17
- package/test/unit/examples/contextResponses/contextSubscriptionRequest2Success.json +0 -7
- package/test/unit/examples/contextResponses/contextSubscriptionRequestSuccess.json +0 -7
- package/test/unit/examples/contextResponses/createBidirectionalDeviceSuccess.json +0 -22
- package/test/unit/examples/contextResponses/createDatetimeProvisionedDeviceSuccess.json +0 -22
- package/test/unit/examples/contextResponses/createGeopointProvisionedDeviceSuccess.json +0 -22
- package/test/unit/examples/contextResponses/createProvisionedDeviceSuccess.json +0 -22
- package/test/unit/examples/contextResponses/createTimeinstantSuccess.json +0 -22
- package/test/unit/examples/contextResponses/queryContext1Success.json +0 -27
- package/test/unit/examples/contextResponses/queryContext2Error.json +0 -7
- package/test/unit/examples/contextResponses/queryContext2UnknownError.json +0 -6
- package/test/unit/examples/contextResponses/queryContext3Error.json +0 -34
- package/test/unit/examples/contextResponses/queryContextAliasPlugin1Success.json +0 -27
- package/test/unit/examples/contextResponses/queryContextCompressTimestamp1Success.json +0 -27
- package/test/unit/examples/contextResponses/updateActiveAttributesSuccess.json +0 -16
- package/test/unit/examples/contextResponses/updateContext1Failed.json +0 -7
- package/test/unit/examples/contextResponses/updateContext1Success.json +0 -27
- package/test/unit/examples/contextResponses/updateContext2Failed.json +0 -35
- package/test/unit/examples/contextResponses/updateContextAliasPlugin2Success.json +0 -27
- package/test/unit/examples/contextResponses/updateContextAliasPluginSuccess.json +0 -27
- package/test/unit/examples/contextResponses/updateContextCommandFinishSuccess.json +0 -27
- package/test/unit/examples/contextResponses/updateContextCommandStatusSuccess.json +0 -22
- package/test/unit/examples/contextResponses/updateContextCompressTimestamp1Success.json +0 -27
- package/test/unit/examples/contextResponses/updateContextCompressTimestamp2Success.json +0 -34
- package/test/unit/examples/contextResponses/updateContextEvents1Success.json +0 -27
- package/test/unit/examples/contextResponses/updateContextExpressionPlugin1Success.json +0 -22
- package/test/unit/examples/contextResponses/updateContextExpressionPlugin2Success.json +0 -22
- package/test/unit/examples/contextResponses/updateContextExpressionPlugin3Success.json +0 -22
- package/test/unit/examples/contextResponses/updateContextExpressionPlugin5Success.json +0 -32
- package/test/unit/examples/contextResponses/updateContextMultientityPlugin1Success.json +0 -40
- package/test/unit/examples/contextResponses/updateContextMultientityPlugin2Success.json +0 -40
- package/test/unit/examples/contextResponses/updateContextMultientityPlugin3Success.json +0 -40
- package/test/unit/examples/contextResponses/updateContextProcessTimestamp1Success.json +0 -27
- package/test/unit/examples/contextResponses/updateProvisionActiveAttributes1Success.json +0 -22
- package/test/unit/examples/contextResponses/updateProvisionCommands1Success.json +0 -32
- package/test/unit/examples/contextResponses/updateProvisionMinimumDeviceSuccess.json +0 -22
- package/test/unit/examples/subscriptionRequests/bidirectionalNotification.json +0 -24
- package/test/unit/examples/subscriptionRequests/bidirectionalSubscriptionRemove.json +0 -3
- package/test/unit/examples/subscriptionRequests/bidirectionalSubscriptionRequest.json +0 -22
- package/test/unit/examples/subscriptionRequests/errorNotification.json +0 -24
- package/test/unit/examples/subscriptionRequests/simpleNotification.json +0 -24
- package/test/unit/examples/subscriptionRequests/simpleSubscriptionRemove.json +0 -3
- package/test/unit/examples/subscriptionRequests/simpleSubscriptionRequest.json +0 -19
- package/test/unit/examples/subscriptionRequests/simpleSubscriptionRequest1.json +0 -19
- package/test/unit/examples/subscriptionResponses/bidirectionalSubscriptionSuccess.json +0 -6
- package/test/unit/examples/subscriptionResponses/simpleSubscriptionSuccess.json +0 -6
- package/test/unit/expressions/expressionBasedTransformations-test.js +0 -328
- package/test/unit/expressions/expressionCombinedTransformations-test.js +0 -306
- package/test/unit/expressions/jexlBasedTransformations-test.js +0 -334
- package/test/unit/general/contextBrokerOAuthSecurityAccess-test.js +0 -902
- package/test/unit/general/https-support-test.js +0 -286
- package/test/unit/general/iotam-autoregistration-test.js +0 -368
- package/test/unit/lazyAndCommands/active-devices-attribute-update-test.js +0 -168
- package/test/unit/lazyAndCommands/command-test.js +0 -341
- package/test/unit/lazyAndCommands/lazy-devices-test.js +0 -878
- package/test/unit/lazyAndCommands/polling-commands-test.js +0 -421
- package/test/unit/ngsi-ld/examples/contextRequests/updateContextExpressionPlugin20.json +0 -25
- package/test/unit/ngsiService/active-devices-test.js +0 -692
- package/test/unit/ngsiService/staticAttributes-test.js +0 -148
- package/test/unit/ngsiService/subscriptions-test.js +0 -345
- package/test/unit/plugins/alias-plugin_test.js +0 -158
- package/test/unit/plugins/bidirectional-plugin_test.js +0 -564
- package/test/unit/plugins/compress-timestamp-plugin_test.js +0 -257
- package/test/unit/plugins/event-plugin_test.js +0 -119
- package/test/unit/plugins/multientity-plugin_test.js +0 -248
- package/test/unit/plugins/timestamp-processing-plugin_test.js +0 -119
- package/test/unit/provisioning/device-provisioning-api_test.js +0 -748
- package/test/unit/provisioning/device-registration_test.js +0 -432
- package/test/unit/provisioning/device-update-registration_test.js +0 -326
- package/test/unit/provisioning/listProvisionedDevices-test.js +0 -488
- package/test/unit/provisioning/provisionDeviceMultientity-test.js +0 -123
- package/test/unit/provisioning/removeProvisionedDevice-test.js +0 -244
- package/test/unit/provisioning/singleConfigurationMode-test.js +0 -346
- package/test/unit/provisioning/updateProvisionedDevices-test.js +0 -436
|
@@ -27,10 +27,11 @@
|
|
|
27
27
|
|
|
28
28
|
const iotAgentLib = require('../../../../lib/fiware-iotagent-lib');
|
|
29
29
|
const utils = require('../../../tools/utils');
|
|
30
|
+
const request = utils.request;
|
|
30
31
|
const should = require('should');
|
|
31
32
|
const nock = require('nock');
|
|
32
33
|
const async = require('async');
|
|
33
|
-
|
|
34
|
+
|
|
34
35
|
let contextBrokerMock;
|
|
35
36
|
const iotAgentConfig = {
|
|
36
37
|
logLevel: 'ERROR',
|
|
@@ -45,9 +46,9 @@ const iotAgentConfig = {
|
|
|
45
46
|
baseRoot: '/'
|
|
46
47
|
},
|
|
47
48
|
types: {},
|
|
48
|
-
service: '
|
|
49
|
+
service: 'smartgondor',
|
|
49
50
|
subservice: 'gardens',
|
|
50
|
-
providerUrl: 'http://
|
|
51
|
+
providerUrl: 'http://smartgondor.com'
|
|
51
52
|
};
|
|
52
53
|
|
|
53
54
|
describe('NGSI-LD - Device provisioning API: Remove provisioned devices', function () {
|
|
@@ -55,7 +56,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
55
56
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
56
57
|
method: 'POST',
|
|
57
58
|
headers: {
|
|
58
|
-
'fiware-service': '
|
|
59
|
+
'fiware-service': 'smartgondor',
|
|
59
60
|
'fiware-servicepath': '/gardens'
|
|
60
61
|
},
|
|
61
62
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionNewDevice.json')
|
|
@@ -64,7 +65,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
64
65
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
65
66
|
method: 'POST',
|
|
66
67
|
headers: {
|
|
67
|
-
'fiware-service': '
|
|
68
|
+
'fiware-service': 'smartgondor',
|
|
68
69
|
'fiware-servicepath': '/gardens'
|
|
69
70
|
},
|
|
70
71
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionAnotherDevice.json')
|
|
@@ -73,7 +74,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
73
74
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
74
75
|
method: 'POST',
|
|
75
76
|
headers: {
|
|
76
|
-
'fiware-service': '
|
|
77
|
+
'fiware-service': 'smartgondor',
|
|
77
78
|
'fiware-servicepath': '/gardens'
|
|
78
79
|
},
|
|
79
80
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionDeviceActiveAtts.json')
|
|
@@ -85,7 +86,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
85
86
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDevice.json'
|
|
86
87
|
);
|
|
87
88
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
88
|
-
.matchHeader('fiware-service', '
|
|
89
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
89
90
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody)
|
|
90
91
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
91
92
|
|
|
@@ -93,7 +94,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
93
94
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
94
95
|
// provisioning folder
|
|
95
96
|
contextBrokerMock
|
|
96
|
-
.matchHeader('fiware-service', '
|
|
97
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
97
98
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
98
99
|
.reply(204);
|
|
99
100
|
|
|
@@ -101,7 +102,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
101
102
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDevice2.json'
|
|
102
103
|
);
|
|
103
104
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
104
|
-
.matchHeader('fiware-service', '
|
|
105
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
105
106
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody2)
|
|
106
107
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
107
108
|
|
|
@@ -109,20 +110,20 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
109
110
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
110
111
|
// provisioning folder
|
|
111
112
|
contextBrokerMock
|
|
112
|
-
.matchHeader('fiware-service', '
|
|
113
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
113
114
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
114
115
|
.reply(204);
|
|
115
116
|
|
|
116
117
|
contextBrokerMock
|
|
117
|
-
.matchHeader('fiware-service', '
|
|
118
|
-
.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d')
|
|
118
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
119
|
+
.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d', '')
|
|
119
120
|
.reply(204);
|
|
120
121
|
|
|
121
122
|
// This mock does not check the payload since the aim of the test is not to verify
|
|
122
123
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
123
124
|
// provisioning folder
|
|
124
125
|
contextBrokerMock
|
|
125
|
-
.matchHeader('fiware-service', '
|
|
126
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
126
127
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
127
128
|
.reply(204);
|
|
128
129
|
|
|
@@ -148,7 +149,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
148
149
|
const options = {
|
|
149
150
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
150
151
|
headers: {
|
|
151
|
-
'fiware-service': '
|
|
152
|
+
'fiware-service': 'smartgondor',
|
|
152
153
|
'fiware-servicepath': '/gardens'
|
|
153
154
|
},
|
|
154
155
|
method: 'DELETE'
|
|
@@ -167,15 +168,14 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
167
168
|
const options = {
|
|
168
169
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
169
170
|
headers: {
|
|
170
|
-
'fiware-service': '
|
|
171
|
+
'fiware-service': 'smartgondor',
|
|
171
172
|
'fiware-servicepath': '/gardens'
|
|
172
173
|
},
|
|
173
174
|
method: 'GET'
|
|
174
175
|
};
|
|
175
176
|
|
|
176
177
|
request(options, function (error, response, body) {
|
|
177
|
-
|
|
178
|
-
parsedBody.devices.length.should.equal(2);
|
|
178
|
+
body.devices.length.should.equal(2);
|
|
179
179
|
done();
|
|
180
180
|
});
|
|
181
181
|
});
|
|
@@ -186,7 +186,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
186
186
|
const options = {
|
|
187
187
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
188
188
|
headers: {
|
|
189
|
-
'fiware-service': '
|
|
189
|
+
'fiware-service': 'smartgondor',
|
|
190
190
|
'fiware-servicepath': '/gardens'
|
|
191
191
|
},
|
|
192
192
|
method: 'GET'
|
|
@@ -219,7 +219,7 @@ describe('NGSI-LD - Device provisioning API: Remove provisioned devices', functi
|
|
|
219
219
|
const options = {
|
|
220
220
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light3',
|
|
221
221
|
headers: {
|
|
222
|
-
'fiware-service': '
|
|
222
|
+
'fiware-service': 'smartgondor',
|
|
223
223
|
'fiware-servicepath': '/gardens'
|
|
224
224
|
},
|
|
225
225
|
method: 'DELETE'
|
|
@@ -27,11 +27,12 @@
|
|
|
27
27
|
|
|
28
28
|
const iotAgentLib = require('../../../../lib/fiware-iotagent-lib');
|
|
29
29
|
const utils = require('../../../tools/utils');
|
|
30
|
+
const request = utils.request;
|
|
30
31
|
|
|
31
32
|
const should = require('should');
|
|
32
33
|
const nock = require('nock');
|
|
33
34
|
let contextBrokerMock;
|
|
34
|
-
|
|
35
|
+
|
|
35
36
|
const iotAgentConfig = {
|
|
36
37
|
logLevel: 'FATAL',
|
|
37
38
|
contextBroker: {
|
|
@@ -45,17 +46,17 @@ const iotAgentConfig = {
|
|
|
45
46
|
baseRoot: '/'
|
|
46
47
|
},
|
|
47
48
|
types: {},
|
|
48
|
-
service: '
|
|
49
|
+
service: 'smartgondor',
|
|
49
50
|
singleConfigurationMode: true,
|
|
50
51
|
subservice: 'gardens',
|
|
51
|
-
providerUrl: 'http://
|
|
52
|
+
providerUrl: 'http://smartgondor.com'
|
|
52
53
|
};
|
|
53
54
|
const groupCreation = {
|
|
54
55
|
url: 'http://localhost:4041/iot/services',
|
|
55
56
|
method: 'POST',
|
|
56
57
|
json: utils.readExampleFile('./test/unit/examples/groupProvisioningRequests/provisionFullGroup.json'),
|
|
57
58
|
headers: {
|
|
58
|
-
'fiware-service': '
|
|
59
|
+
'fiware-service': 'testservice',
|
|
59
60
|
'fiware-servicepath': '/testingPath'
|
|
60
61
|
}
|
|
61
62
|
};
|
|
@@ -64,7 +65,7 @@ const deviceCreation = {
|
|
|
64
65
|
method: 'POST',
|
|
65
66
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionNewDevice.json'),
|
|
66
67
|
headers: {
|
|
67
|
-
'fiware-service': '
|
|
68
|
+
'fiware-service': 'testservice',
|
|
68
69
|
'fiware-servicepath': '/testingPath'
|
|
69
70
|
}
|
|
70
71
|
};
|
|
@@ -90,7 +91,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
90
91
|
method: 'POST',
|
|
91
92
|
json: utils.readExampleFile('./test/unit/examples/groupProvisioningRequests/provisionDuplicateGroup.json'),
|
|
92
93
|
headers: {
|
|
93
|
-
'fiware-service': '
|
|
94
|
+
'fiware-service': 'testservice',
|
|
94
95
|
'fiware-servicepath': '/testingPath'
|
|
95
96
|
}
|
|
96
97
|
};
|
|
@@ -115,7 +116,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
115
116
|
method: 'POST',
|
|
116
117
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionDuplicatedDev.json'),
|
|
117
118
|
headers: {
|
|
118
|
-
'fiware-service': '
|
|
119
|
+
'fiware-service': 'testservice',
|
|
119
120
|
'fiware-servicepath': '/testingPath'
|
|
120
121
|
}
|
|
121
122
|
};
|
|
@@ -124,7 +125,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
124
125
|
nock.cleanAll();
|
|
125
126
|
|
|
126
127
|
contextBrokerMock = nock('http://unexistentHost:1026')
|
|
127
|
-
.matchHeader('fiware-service', '
|
|
128
|
+
.matchHeader('fiware-service', 'testservice')
|
|
128
129
|
.post('/ngsi-ld/v1/csourceRegistrations/')
|
|
129
130
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
130
131
|
|
|
@@ -132,7 +133,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
132
133
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
133
134
|
// provisioning folder
|
|
134
135
|
contextBrokerMock
|
|
135
|
-
.matchHeader('fiware-service', '
|
|
136
|
+
.matchHeader('fiware-service', 'testservice')
|
|
136
137
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
137
138
|
.reply(204);
|
|
138
139
|
|
|
@@ -177,7 +178,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
177
178
|
nock.cleanAll();
|
|
178
179
|
|
|
179
180
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
180
|
-
.matchHeader('fiware-service', '
|
|
181
|
+
.matchHeader('fiware-service', 'testservice')
|
|
181
182
|
.post('/ngsi-ld/v1/csourceRegistrations/')
|
|
182
183
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
183
184
|
|
|
@@ -185,7 +186,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
185
186
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
186
187
|
// provisioning folder
|
|
187
188
|
contextBrokerMock
|
|
188
|
-
.matchHeader('fiware-service', '
|
|
189
|
+
.matchHeader('fiware-service', 'testservice')
|
|
189
190
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
190
191
|
.reply(204);
|
|
191
192
|
|
|
@@ -224,7 +225,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
224
225
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
225
226
|
method: 'GET',
|
|
226
227
|
headers: {
|
|
227
|
-
'fiware-service': '
|
|
228
|
+
'fiware-service': 'testservice',
|
|
228
229
|
'fiware-servicepath': '/testingPath'
|
|
229
230
|
}
|
|
230
231
|
};
|
|
@@ -234,7 +235,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
234
235
|
nock.cleanAll();
|
|
235
236
|
|
|
236
237
|
contextBrokerMock = nock('http://unexistentHost:1026')
|
|
237
|
-
.matchHeader('fiware-service', '
|
|
238
|
+
.matchHeader('fiware-service', 'testservice')
|
|
238
239
|
.post('/ngsi-ld/v1/csourceRegistrations/')
|
|
239
240
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
240
241
|
|
|
@@ -242,7 +243,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
242
243
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
243
244
|
// provisioning folder
|
|
244
245
|
contextBrokerMock
|
|
245
|
-
.matchHeader('fiware-service', '
|
|
246
|
+
.matchHeader('fiware-service', 'testservice')
|
|
246
247
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
247
248
|
.reply(204);
|
|
248
249
|
|
|
@@ -258,10 +259,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
258
259
|
it('should be provisioned with the default type', function (done) {
|
|
259
260
|
request(deviceCreation, function (error, response, body) {
|
|
260
261
|
request(getDevice, function (error, response, body) {
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
parsedBody.entity_type.should.equal('SensorMachine');
|
|
264
|
-
|
|
262
|
+
body.entity_type.should.equal('SensorMachine');
|
|
265
263
|
done();
|
|
266
264
|
});
|
|
267
265
|
});
|
|
@@ -271,7 +269,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
271
269
|
beforeEach(function (done) {
|
|
272
270
|
nock.cleanAll();
|
|
273
271
|
contextBrokerMock = nock('http://unexistentHost:1026')
|
|
274
|
-
.matchHeader('fiware-service', '
|
|
272
|
+
.matchHeader('fiware-service', 'testservice')
|
|
275
273
|
.post(
|
|
276
274
|
'/ngsi-ld/v1/csourceRegistrations/',
|
|
277
275
|
utils.readExampleFile(
|
|
@@ -282,7 +280,7 @@ describe('NGSI-LD - Provisioning API: Single service mode', function () {
|
|
|
282
280
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
283
281
|
|
|
284
282
|
contextBrokerMock
|
|
285
|
-
.matchHeader('fiware-service', '
|
|
283
|
+
.matchHeader('fiware-service', 'testservice')
|
|
286
284
|
.post(
|
|
287
285
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
288
286
|
utils.readExampleFile(
|
|
@@ -27,10 +27,11 @@
|
|
|
27
27
|
|
|
28
28
|
const iotAgentLib = require('../../../../lib/fiware-iotagent-lib');
|
|
29
29
|
const utils = require('../../../tools/utils');
|
|
30
|
+
const request = utils.request;
|
|
30
31
|
const should = require('should');
|
|
31
32
|
const nock = require('nock');
|
|
32
33
|
const async = require('async');
|
|
33
|
-
|
|
34
|
+
|
|
34
35
|
let contextBrokerMock;
|
|
35
36
|
const iotAgentConfig = {
|
|
36
37
|
logLevel: 'FATAL',
|
|
@@ -45,8 +46,8 @@ const iotAgentConfig = {
|
|
|
45
46
|
baseRoot: '/'
|
|
46
47
|
},
|
|
47
48
|
types: {},
|
|
48
|
-
service: '
|
|
49
|
-
providerUrl: 'http://
|
|
49
|
+
service: 'smartgondor',
|
|
50
|
+
providerUrl: 'http://smartgondor.com'
|
|
50
51
|
};
|
|
51
52
|
|
|
52
53
|
describe('NGSI-LD - Device provisioning API: Update provisioned devices', function () {
|
|
@@ -54,7 +55,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
54
55
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
55
56
|
method: 'POST',
|
|
56
57
|
headers: {
|
|
57
|
-
'fiware-service': '
|
|
58
|
+
'fiware-service': 'smartgondor',
|
|
58
59
|
'fiware-servicepath': '/gardens'
|
|
59
60
|
},
|
|
60
61
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionNewDevice.json')
|
|
@@ -63,7 +64,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
63
64
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
64
65
|
method: 'POST',
|
|
65
66
|
headers: {
|
|
66
|
-
'fiware-service': '
|
|
67
|
+
'fiware-service': 'smartgondor',
|
|
67
68
|
'fiware-servicepath': '/gardens'
|
|
68
69
|
},
|
|
69
70
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionAnotherDevice.json')
|
|
@@ -72,7 +73,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
72
73
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
73
74
|
method: 'POST',
|
|
74
75
|
headers: {
|
|
75
|
-
'fiware-service': '
|
|
76
|
+
'fiware-service': 'smartgondor',
|
|
76
77
|
'fiware-servicepath': '/gardens'
|
|
77
78
|
},
|
|
78
79
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice2.json')
|
|
@@ -85,7 +86,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
85
86
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerProvisionedDevice.json'
|
|
86
87
|
);
|
|
87
88
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
88
|
-
.matchHeader('fiware-service', '
|
|
89
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
89
90
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody)
|
|
90
91
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
91
92
|
|
|
@@ -93,7 +94,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
93
94
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
94
95
|
// provisioning folder
|
|
95
96
|
contextBrokerMock
|
|
96
|
-
.matchHeader('fiware-service', '
|
|
97
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
97
98
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
98
99
|
.reply(204);
|
|
99
100
|
|
|
@@ -102,7 +103,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
102
103
|
);
|
|
103
104
|
nockBody2.expires = /.+/i;
|
|
104
105
|
contextBrokerMock
|
|
105
|
-
.matchHeader('fiware-service', '
|
|
106
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
106
107
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody2)
|
|
107
108
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6719a7f5254b058441165849' });
|
|
108
109
|
|
|
@@ -110,7 +111,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
110
111
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
111
112
|
// provisioning folder
|
|
112
113
|
contextBrokerMock
|
|
113
|
-
.matchHeader('fiware-service', '
|
|
114
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
114
115
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
115
116
|
.reply(204);
|
|
116
117
|
|
|
@@ -118,8 +119,8 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
118
119
|
// this function should use the new API. This is just a temporary solution which implies deleting the
|
|
119
120
|
// registration and creating a new one.
|
|
120
121
|
contextBrokerMock
|
|
121
|
-
.matchHeader('fiware-service', '
|
|
122
|
-
.delete('/ngsi-ld/v1/csourceRegistrations/6719a7f5254b058441165849')
|
|
122
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
123
|
+
.delete('/ngsi-ld/v1/csourceRegistrations/6719a7f5254b058441165849', '')
|
|
123
124
|
.reply(204);
|
|
124
125
|
|
|
125
126
|
const nockBody3 = utils.readExampleFile(
|
|
@@ -127,7 +128,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
127
128
|
);
|
|
128
129
|
nockBody3.expires = /.+/i;
|
|
129
130
|
contextBrokerMock
|
|
130
|
-
.matchHeader('fiware-service', '
|
|
131
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
131
132
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody3)
|
|
132
133
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/4419a7f5254b058441165849' });
|
|
133
134
|
|
|
@@ -153,7 +154,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
153
154
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
154
155
|
method: 'PUT',
|
|
155
156
|
headers: {
|
|
156
|
-
'fiware-service': '
|
|
157
|
+
'fiware-service': 'smartgondor',
|
|
157
158
|
'fiware-servicepath': '/gardens'
|
|
158
159
|
},
|
|
159
160
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/updateProvisionDevice.json')
|
|
@@ -161,15 +162,15 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
161
162
|
|
|
162
163
|
beforeEach(function () {
|
|
163
164
|
contextBrokerMock
|
|
164
|
-
.matchHeader('fiware-service', '
|
|
165
|
-
.post('/ngsi-ld/v1/
|
|
165
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
166
|
+
.post('/ngsi-ld/v1/entityOperations/upsert/', {
|
|
166
167
|
'@context': 'http://context.json-ld'
|
|
167
168
|
})
|
|
168
169
|
.reply(204);
|
|
169
170
|
|
|
170
171
|
contextBrokerMock
|
|
171
|
-
.matchHeader('fiware-service', '
|
|
172
|
-
.post('/ngsi-ld/v1/entityOperations/upsert
|
|
172
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
173
|
+
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
173
174
|
.reply(204);
|
|
174
175
|
|
|
175
176
|
// FIXME: When https://github.com/telefonicaid/fiware-orion/issues/3007 is merged into master branch,
|
|
@@ -177,12 +178,12 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
177
178
|
// registration and creating a new one.
|
|
178
179
|
|
|
179
180
|
contextBrokerMock
|
|
180
|
-
.matchHeader('fiware-service', '
|
|
181
|
-
.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d')
|
|
181
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
182
|
+
.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d', '')
|
|
182
183
|
.reply(204);
|
|
183
184
|
|
|
184
185
|
contextBrokerMock
|
|
185
|
-
.matchHeader('fiware-service', '
|
|
186
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
186
187
|
.post(
|
|
187
188
|
'/ngsi-ld/v1/csourceRegistrations/',
|
|
188
189
|
utils.readExampleFile(
|
|
@@ -192,7 +193,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
192
193
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/4419a7f5254b058441165849' });
|
|
193
194
|
|
|
194
195
|
contextBrokerMock
|
|
195
|
-
.matchHeader('fiware-service', '
|
|
196
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
196
197
|
.post(
|
|
197
198
|
'/ngsi-ld/v1/csourceRegistrations/',
|
|
198
199
|
utils.readExampleFile(
|
|
@@ -215,7 +216,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
215
216
|
const options = {
|
|
216
217
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
217
218
|
headers: {
|
|
218
|
-
'fiware-service': '
|
|
219
|
+
'fiware-service': 'smartgondor',
|
|
219
220
|
'fiware-servicepath': '/gardens'
|
|
220
221
|
},
|
|
221
222
|
method: 'GET'
|
|
@@ -223,10 +224,8 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
223
224
|
|
|
224
225
|
request(options, function (error, response, body) {
|
|
225
226
|
/* jshint camelcase:false */
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
parsedBody.entity_name.should.equal('ANewLightName');
|
|
229
|
-
parsedBody.timezone.should.equal('Europe/Madrid');
|
|
227
|
+
body.entity_name.should.equal('ANewLightName');
|
|
228
|
+
body.timezone.should.equal('Europe/Madrid');
|
|
230
229
|
done();
|
|
231
230
|
});
|
|
232
231
|
});
|
|
@@ -237,7 +236,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
237
236
|
const options = {
|
|
238
237
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
239
238
|
headers: {
|
|
240
|
-
'fiware-service': '
|
|
239
|
+
'fiware-service': 'smartgondor',
|
|
241
240
|
'fiware-servicepath': '/gardens'
|
|
242
241
|
},
|
|
243
242
|
method: 'GET'
|
|
@@ -246,9 +245,8 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
246
245
|
request(options, function (error, response, body) {
|
|
247
246
|
/* jshint camelcase:false */
|
|
248
247
|
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
parsedBody.service.should.equal('smartGondor');
|
|
248
|
+
body.entity_type.should.equal('TheLightType');
|
|
249
|
+
body.service.should.equal('smartgondor');
|
|
252
250
|
done();
|
|
253
251
|
});
|
|
254
252
|
});
|
|
@@ -259,7 +257,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
259
257
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
260
258
|
method: 'PUT',
|
|
261
259
|
headers: {
|
|
262
|
-
'fiware-service': '
|
|
260
|
+
'fiware-service': 'smartgondor',
|
|
263
261
|
'fiware-servicepath': '/gardens'
|
|
264
262
|
},
|
|
265
263
|
json: utils.readExampleFile(
|
|
@@ -280,7 +278,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
280
278
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light1',
|
|
281
279
|
method: 'PUT',
|
|
282
280
|
headers: {
|
|
283
|
-
'fiware-service': '
|
|
281
|
+
'fiware-service': 'smartgondor',
|
|
284
282
|
'fiware-servicepath': '/gardens'
|
|
285
283
|
},
|
|
286
284
|
json: utils.readExampleFile(
|
|
@@ -302,7 +300,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
302
300
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/MicroLight2',
|
|
303
301
|
method: 'PUT',
|
|
304
302
|
headers: {
|
|
305
|
-
'fiware-service': '
|
|
303
|
+
'fiware-service': 'smartgondor',
|
|
306
304
|
'fiware-servicepath': '/gardens'
|
|
307
305
|
},
|
|
308
306
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/updateMinimumDevice.json')
|
|
@@ -311,7 +309,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
311
309
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/MicroLight2',
|
|
312
310
|
method: 'GET',
|
|
313
311
|
headers: {
|
|
314
|
-
'fiware-service': '
|
|
312
|
+
'fiware-service': 'smartgondor',
|
|
315
313
|
'fiware-servicepath': '/gardens'
|
|
316
314
|
}
|
|
317
315
|
};
|
|
@@ -323,12 +321,12 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
323
321
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
324
322
|
// provisioning folder
|
|
325
323
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
326
|
-
.matchHeader('fiware-service', '
|
|
324
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
327
325
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
328
326
|
.reply(204);
|
|
329
327
|
|
|
330
328
|
contextBrokerMock
|
|
331
|
-
.matchHeader('fiware-service', '
|
|
329
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
332
330
|
.post(
|
|
333
331
|
'/ngsi-ld/v1/entityOperations/upsert/?options=update',
|
|
334
332
|
utils.readExampleFile(
|
|
@@ -353,10 +351,8 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
353
351
|
should.not.exist(error);
|
|
354
352
|
response.statusCode.should.equal(200);
|
|
355
353
|
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
parsedBody.attributes.length.should.equal(1);
|
|
359
|
-
parsedBody.attributes[0].name.should.equal('newAttribute');
|
|
354
|
+
body.attributes.length.should.equal(1);
|
|
355
|
+
body.attributes[0].name.should.equal('newAttribute');
|
|
360
356
|
done();
|
|
361
357
|
});
|
|
362
358
|
});
|
|
@@ -377,7 +373,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
377
373
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/MicroLight2',
|
|
378
374
|
method: 'PUT',
|
|
379
375
|
headers: {
|
|
380
|
-
'fiware-service': '
|
|
376
|
+
'fiware-service': 'smartgondor',
|
|
381
377
|
'fiware-servicepath': '/gardens'
|
|
382
378
|
},
|
|
383
379
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/updateDeviceStatic.json')
|
|
@@ -386,7 +382,7 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
386
382
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/MicroLight2',
|
|
387
383
|
method: 'GET',
|
|
388
384
|
headers: {
|
|
389
|
-
'fiware-service': '
|
|
385
|
+
'fiware-service': 'smartgondor',
|
|
390
386
|
'fiware-servicepath': '/gardens'
|
|
391
387
|
}
|
|
392
388
|
};
|
|
@@ -398,12 +394,12 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
398
394
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
399
395
|
// provisioning folder
|
|
400
396
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
401
|
-
.matchHeader('fiware-service', '
|
|
397
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
402
398
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
403
399
|
.reply(204);
|
|
404
400
|
|
|
405
401
|
contextBrokerMock
|
|
406
|
-
.matchHeader('fiware-service', '
|
|
402
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
407
403
|
.post(
|
|
408
404
|
'/ngsi-ld/v1/entityOperations/upsert/?options=update',
|
|
409
405
|
utils.readExampleFile(
|
|
@@ -421,10 +417,8 @@ describe('NGSI-LD - Device provisioning API: Update provisioned devices', functi
|
|
|
421
417
|
should.not.exist(error);
|
|
422
418
|
response.statusCode.should.equal(200);
|
|
423
419
|
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
parsedBody.static_attributes.length.should.equal(3);
|
|
427
|
-
parsedBody.static_attributes[0].name.should.equal('cellID');
|
|
420
|
+
body.static_attributes.length.should.equal(3);
|
|
421
|
+
body.static_attributes[0].name.should.equal('cellID');
|
|
428
422
|
done();
|
|
429
423
|
});
|
|
430
424
|
});
|