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,9 +27,10 @@
|
|
|
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
|
+
|
|
33
34
|
let contextBrokerMock;
|
|
34
35
|
const iotAgentConfig = {
|
|
35
36
|
logLevel: 'FATAL',
|
|
@@ -44,9 +45,9 @@ const iotAgentConfig = {
|
|
|
44
45
|
baseRoot: '/'
|
|
45
46
|
},
|
|
46
47
|
types: {},
|
|
47
|
-
service: '
|
|
48
|
+
service: 'smartgondor',
|
|
48
49
|
subservice: 'gardens',
|
|
49
|
-
providerUrl: 'http://
|
|
50
|
+
providerUrl: 'http://smartgondor.com'
|
|
50
51
|
};
|
|
51
52
|
|
|
52
53
|
describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
@@ -55,7 +56,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
55
56
|
|
|
56
57
|
iotAgentLib.activate(iotAgentConfig, function () {
|
|
57
58
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
58
|
-
.matchHeader('fiware-service', '
|
|
59
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
59
60
|
.post(
|
|
60
61
|
'/ngsi-ld/v1/csourceRegistrations/',
|
|
61
62
|
utils.readExampleFile(
|
|
@@ -68,7 +69,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
68
69
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
69
70
|
// provisioning folder
|
|
70
71
|
contextBrokerMock
|
|
71
|
-
.matchHeader('fiware-service', '
|
|
72
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
72
73
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
73
74
|
.reply(204);
|
|
74
75
|
|
|
@@ -86,7 +87,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
86
87
|
beforeEach(function () {
|
|
87
88
|
nock.cleanAll();
|
|
88
89
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
89
|
-
.matchHeader('fiware-service', '
|
|
90
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
90
91
|
.post(
|
|
91
92
|
'/ngsi-ld/v1/csourceRegistrations/',
|
|
92
93
|
utils.readExampleFile(
|
|
@@ -96,7 +97,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
96
97
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
97
98
|
|
|
98
99
|
contextBrokerMock
|
|
99
|
-
.matchHeader('fiware-service', '
|
|
100
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
100
101
|
.post(
|
|
101
102
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
102
103
|
utils.readExampleFile('./test/unit/ngsi-ld/examples/contextRequests/createProvisionedDevice.json')
|
|
@@ -109,7 +110,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
109
110
|
method: 'POST',
|
|
110
111
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionNewDevice.json'),
|
|
111
112
|
headers: {
|
|
112
|
-
'fiware-service': '
|
|
113
|
+
'fiware-service': 'smartgondor',
|
|
113
114
|
'fiware-servicepath': '/gardens'
|
|
114
115
|
}
|
|
115
116
|
};
|
|
@@ -119,7 +120,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
119
120
|
should.not.exist(error);
|
|
120
121
|
response.statusCode.should.equal(201);
|
|
121
122
|
|
|
122
|
-
iotAgentLib.listDevices('
|
|
123
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
123
124
|
results.devices.length.should.equal(1);
|
|
124
125
|
done();
|
|
125
126
|
});
|
|
@@ -143,7 +144,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
143
144
|
it('should store the device with the provided entity id, name and type', function (done) {
|
|
144
145
|
request(options, function (error, response, body) {
|
|
145
146
|
response.statusCode.should.equal(201);
|
|
146
|
-
iotAgentLib.listDevices('
|
|
147
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
147
148
|
results.devices[0].id.should.equal('Light1');
|
|
148
149
|
results.devices[0].name.should.equal('TheFirstLight');
|
|
149
150
|
results.devices[0].type.should.equal('TheLightType');
|
|
@@ -154,7 +155,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
154
155
|
it('should store the device with the per device information', function (done) {
|
|
155
156
|
request(options, function (error, response, body) {
|
|
156
157
|
response.statusCode.should.equal(201);
|
|
157
|
-
iotAgentLib.listDevices('
|
|
158
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
158
159
|
should.exist(results.devices[0].timezone);
|
|
159
160
|
results.devices[0].timezone.should.equal('America/Santiago');
|
|
160
161
|
should.exist(results.devices[0].endpoint);
|
|
@@ -185,7 +186,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
185
186
|
/* jshint camelcase:false */
|
|
186
187
|
request(options, function (error, response, body) {
|
|
187
188
|
response.statusCode.should.equal(201);
|
|
188
|
-
iotAgentLib.listDevices('
|
|
189
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
189
190
|
results.devices[0].lazy[0].object_id.should.equal('luminance');
|
|
190
191
|
results.devices[0].commands[0].object_id.should.equal('commandAttr');
|
|
191
192
|
results.devices[0].active[0].object_id.should.equal('attr_name');
|
|
@@ -197,9 +198,9 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
197
198
|
it('should store service and subservice info from the headers along with the device data', function (done) {
|
|
198
199
|
request(options, function (error, response, body) {
|
|
199
200
|
response.statusCode.should.equal(201);
|
|
200
|
-
iotAgentLib.listDevices('
|
|
201
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
201
202
|
should.exist(results.devices[0].service);
|
|
202
|
-
results.devices[0].service.should.equal('
|
|
203
|
+
results.devices[0].service.should.equal('smartgondor');
|
|
203
204
|
should.exist(results.devices[0].subservice);
|
|
204
205
|
results.devices[0].subservice.should.equal('/gardens');
|
|
205
206
|
done();
|
|
@@ -210,7 +211,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
210
211
|
it('should create the initial entity in the Context Broker', function (done) {
|
|
211
212
|
request(options, function (error, response, body) {
|
|
212
213
|
response.statusCode.should.equal(201);
|
|
213
|
-
iotAgentLib.listDevices('
|
|
214
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
214
215
|
contextBrokerMock.done();
|
|
215
216
|
done();
|
|
216
217
|
});
|
|
@@ -223,7 +224,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
223
224
|
method: 'POST',
|
|
224
225
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionTimeInstant.json'),
|
|
225
226
|
headers: {
|
|
226
|
-
'fiware-service': '
|
|
227
|
+
'fiware-service': 'smartgondor',
|
|
227
228
|
'fiware-servicepath': '/gardens'
|
|
228
229
|
}
|
|
229
230
|
};
|
|
@@ -242,7 +243,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
242
243
|
beforeEach(function (done) {
|
|
243
244
|
nock.cleanAll();
|
|
244
245
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
245
|
-
.matchHeader('fiware-service', '
|
|
246
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
246
247
|
.post(
|
|
247
248
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
248
249
|
utils.readExampleFile('./test/unit/ngsi-ld/examples/contextRequests/createTimeinstantDevice.json')
|
|
@@ -266,7 +267,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
266
267
|
method: 'POST',
|
|
267
268
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionTimeInstant2.json'),
|
|
268
269
|
headers: {
|
|
269
|
-
'fiware-service': '
|
|
270
|
+
'fiware-service': 'smartgondor',
|
|
270
271
|
'fiware-servicepath': '/gardens'
|
|
271
272
|
}
|
|
272
273
|
};
|
|
@@ -285,7 +286,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
285
286
|
beforeEach(function (done) {
|
|
286
287
|
nock.cleanAll();
|
|
287
288
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
288
|
-
.matchHeader('fiware-service', '
|
|
289
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
289
290
|
.post(
|
|
290
291
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
291
292
|
utils.readExampleFile('./test/unit/ngsi-ld/examples/contextRequests/createTimeinstantDevice.json')
|
|
@@ -309,7 +310,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
309
310
|
method: 'POST',
|
|
310
311
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionAutoprovision.json'),
|
|
311
312
|
headers: {
|
|
312
|
-
'fiware-service': '
|
|
313
|
+
'fiware-service': 'smartgondor',
|
|
313
314
|
'fiware-servicepath': '/gardens'
|
|
314
315
|
}
|
|
315
316
|
};
|
|
@@ -328,7 +329,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
328
329
|
beforeEach(function (done) {
|
|
329
330
|
nock.cleanAll();
|
|
330
331
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
331
|
-
.matchHeader('fiware-service', '
|
|
332
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
332
333
|
.post(
|
|
333
334
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
334
335
|
utils.readExampleFile('./test/unit/ngsi-ld/examples/contextRequests/createAutoprovisionDevice.json')
|
|
@@ -351,7 +352,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
351
352
|
method: 'POST',
|
|
352
353
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
353
354
|
headers: {
|
|
354
|
-
'fiware-service': '
|
|
355
|
+
'fiware-service': 'smartgondor',
|
|
355
356
|
'fiware-servicepath': '/gardens'
|
|
356
357
|
}
|
|
357
358
|
};
|
|
@@ -370,7 +371,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
370
371
|
beforeEach(function (done) {
|
|
371
372
|
nock.cleanAll();
|
|
372
373
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
373
|
-
.matchHeader('fiware-service', '
|
|
374
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
374
375
|
.post(
|
|
375
376
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
376
377
|
utils.readExampleFile(
|
|
@@ -396,7 +397,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
396
397
|
method: 'POST',
|
|
397
398
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
398
399
|
headers: {
|
|
399
|
-
'fiware-service': '
|
|
400
|
+
'fiware-service': 'smartgondor',
|
|
400
401
|
'fiware-servicepath': '/gardens'
|
|
401
402
|
}
|
|
402
403
|
};
|
|
@@ -404,7 +405,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
404
405
|
beforeEach(function (done) {
|
|
405
406
|
nock.cleanAll();
|
|
406
407
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
407
|
-
.matchHeader('fiware-service', '
|
|
408
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
408
409
|
.post(
|
|
409
410
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
410
411
|
utils.readExampleFile(
|
|
@@ -428,7 +429,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
428
429
|
should.not.exist(error);
|
|
429
430
|
response.statusCode.should.equal(201);
|
|
430
431
|
|
|
431
|
-
iotAgentLib.listDevices('
|
|
432
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
432
433
|
results.devices.length.should.equal(1);
|
|
433
434
|
done();
|
|
434
435
|
});
|
|
@@ -438,7 +439,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
438
439
|
it('should store the device with the provided entity id, name and type', function (done) {
|
|
439
440
|
request(options, function (error, response, body) {
|
|
440
441
|
response.statusCode.should.equal(201);
|
|
441
|
-
iotAgentLib.listDevices('
|
|
442
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
442
443
|
results.devices[0].id.should.equal('MicroLight1');
|
|
443
444
|
results.devices[0].name.should.equal('FirstMicroLight');
|
|
444
445
|
results.devices[0].type.should.equal('MicroLights');
|
|
@@ -454,7 +455,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
454
455
|
method: 'POST',
|
|
455
456
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionGeopointDevice.json'),
|
|
456
457
|
headers: {
|
|
457
|
-
'fiware-service': '
|
|
458
|
+
'fiware-service': 'smartgondor',
|
|
458
459
|
'fiware-servicepath': '/gardens'
|
|
459
460
|
}
|
|
460
461
|
};
|
|
@@ -462,7 +463,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
462
463
|
beforeEach(function (done) {
|
|
463
464
|
nock.cleanAll();
|
|
464
465
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
465
|
-
.matchHeader('fiware-service', '
|
|
466
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
466
467
|
.post(
|
|
467
468
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
468
469
|
utils.readExampleFile(
|
|
@@ -488,7 +489,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
488
489
|
method: 'POST',
|
|
489
490
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionDatetimeDevice.json'),
|
|
490
491
|
headers: {
|
|
491
|
-
'fiware-service': '
|
|
492
|
+
'fiware-service': 'smartgondor',
|
|
492
493
|
'fiware-servicepath': '/gardens'
|
|
493
494
|
}
|
|
494
495
|
};
|
|
@@ -496,7 +497,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
496
497
|
beforeEach(function (done) {
|
|
497
498
|
nock.cleanAll();
|
|
498
499
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
499
|
-
.matchHeader('fiware-service', '
|
|
500
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
500
501
|
.post(
|
|
501
502
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
502
503
|
utils.readExampleFile(
|
|
@@ -522,7 +523,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
522
523
|
method: 'POST',
|
|
523
524
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
524
525
|
headers: {
|
|
525
|
-
'fiware-service': '
|
|
526
|
+
'fiware-service': 'smartgondor',
|
|
526
527
|
'fiware-servicepath': '/gardens'
|
|
527
528
|
}
|
|
528
529
|
};
|
|
@@ -573,7 +574,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
573
574
|
it('should show the new device in each list', function (done) {
|
|
574
575
|
request(options1, function (error, response, body) {
|
|
575
576
|
request(options2, function (error, response, body) {
|
|
576
|
-
iotAgentLib.listDevices('
|
|
577
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
577
578
|
results.devices.length.should.equal(1);
|
|
578
579
|
results.devices[0].id.should.equal('MicroLight1');
|
|
579
580
|
|
|
@@ -594,7 +595,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
594
595
|
method: 'POST',
|
|
595
596
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
596
597
|
headers: {
|
|
597
|
-
'fiware-service': '
|
|
598
|
+
'fiware-service': 'smartgondor',
|
|
598
599
|
'fiware-servicepath': '/gardens'
|
|
599
600
|
}
|
|
600
601
|
};
|
|
@@ -602,7 +603,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
602
603
|
beforeEach(function (done) {
|
|
603
604
|
nock.cleanAll();
|
|
604
605
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
605
|
-
.matchHeader('fiware-service', '
|
|
606
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
606
607
|
.post(
|
|
607
608
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
608
609
|
utils.readExampleFile(
|
|
@@ -634,7 +635,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
634
635
|
method: 'POST',
|
|
635
636
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
636
637
|
headers: {
|
|
637
|
-
'fiware-service': '
|
|
638
|
+
'fiware-service': 'smartgondor',
|
|
638
639
|
'fiware-servicepath': '/gardens'
|
|
639
640
|
}
|
|
640
641
|
};
|
|
@@ -642,7 +643,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
642
643
|
beforeEach(function (done) {
|
|
643
644
|
nock.cleanAll();
|
|
644
645
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
645
|
-
.matchHeader('fiware-service', '
|
|
646
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
646
647
|
.post(
|
|
647
648
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
648
649
|
utils.readExampleFile(
|
|
@@ -671,7 +672,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
671
672
|
method: 'POST',
|
|
672
673
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
673
674
|
headers: {
|
|
674
|
-
'fiware-service': '
|
|
675
|
+
'fiware-service': 'smartgondor',
|
|
675
676
|
'fiware-servicepath': '/gardens'
|
|
676
677
|
}
|
|
677
678
|
};
|
|
@@ -679,7 +680,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
679
680
|
beforeEach(function (done) {
|
|
680
681
|
nock.cleanAll();
|
|
681
682
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
682
|
-
.matchHeader('fiware-service', '
|
|
683
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
683
684
|
.post(
|
|
684
685
|
'/ngsi-ld/v1/entityOperations/upsert/',
|
|
685
686
|
utils.readExampleFile(
|
|
@@ -708,7 +709,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
708
709
|
method: 'POST',
|
|
709
710
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
710
711
|
headers: {
|
|
711
|
-
'fiware-service': '
|
|
712
|
+
'fiware-service': 'smartgondor',
|
|
712
713
|
'fiware-servicepath': '/gardens'
|
|
713
714
|
}
|
|
714
715
|
};
|
|
@@ -717,7 +718,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
717
718
|
nock.cleanAll();
|
|
718
719
|
|
|
719
720
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
720
|
-
.matchHeader('fiware-service', '
|
|
721
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
721
722
|
.post('/ngsi-ld/v1/csourceRegistrations/')
|
|
722
723
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
723
724
|
|
|
@@ -725,7 +726,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
725
726
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
726
727
|
// provisioning folder
|
|
727
728
|
contextBrokerMock
|
|
728
|
-
.matchHeader('fiware-service', '
|
|
729
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
729
730
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
730
731
|
.replyWithError({ message: 'Description of the error', code: 'STRING_CODE' });
|
|
731
732
|
|
|
@@ -748,7 +749,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
748
749
|
method: 'POST',
|
|
749
750
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionMinimumDevice.json'),
|
|
750
751
|
headers: {
|
|
751
|
-
'fiware-service': '
|
|
752
|
+
'fiware-service': 'smartgondor',
|
|
752
753
|
'fiware-servicepath': '/gardens'
|
|
753
754
|
}
|
|
754
755
|
};
|
|
@@ -757,7 +758,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
757
758
|
nock.cleanAll();
|
|
758
759
|
|
|
759
760
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
760
|
-
.matchHeader('fiware-service', '
|
|
761
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
761
762
|
.post('/ngsi-ld/v1/csourceRegistrations/')
|
|
762
763
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
763
764
|
|
|
@@ -765,7 +766,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
765
766
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
766
767
|
// provisioning folder
|
|
767
768
|
contextBrokerMock
|
|
768
|
-
.matchHeader('fiware-service', '
|
|
769
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
769
770
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
770
771
|
.replyWithError({ message: 'Description of the error', code: 123456789 });
|
|
771
772
|
|
|
@@ -787,7 +788,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
787
788
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices',
|
|
788
789
|
method: 'POST',
|
|
789
790
|
headers: {
|
|
790
|
-
'fiware-service': '
|
|
791
|
+
'fiware-service': 'smartgondor',
|
|
791
792
|
'fiware-servicepath': '/gardens'
|
|
792
793
|
},
|
|
793
794
|
json: utils.readExampleFile(
|
|
@@ -811,14 +812,14 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
811
812
|
method: 'POST',
|
|
812
813
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionNewDevice.json'),
|
|
813
814
|
headers: {
|
|
814
|
-
'fiware-service': '
|
|
815
|
+
'fiware-service': 'smartgondor',
|
|
815
816
|
'fiware-servicepath': '/gardens'
|
|
816
817
|
}
|
|
817
818
|
};
|
|
818
819
|
|
|
819
820
|
beforeEach(function (done) {
|
|
820
821
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
821
|
-
.matchHeader('fiware-service', '
|
|
822
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
822
823
|
.post('/ngsi-ld/v1/csourceRegistrations/')
|
|
823
824
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
824
825
|
|
|
@@ -826,7 +827,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
826
827
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
827
828
|
// provisioning folder
|
|
828
829
|
contextBrokerMock
|
|
829
|
-
.matchHeader('fiware-service', '
|
|
830
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
830
831
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
831
832
|
.reply(204);
|
|
832
833
|
|
|
@@ -852,7 +853,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
852
853
|
'./test/unit/examples/deviceProvisioningRequests/provisionNewDeviceMalformed1.json'
|
|
853
854
|
),
|
|
854
855
|
headers: {
|
|
855
|
-
'fiware-service': '
|
|
856
|
+
'fiware-service': 'smartgondor',
|
|
856
857
|
'fiware-servicepath': '/gardens'
|
|
857
858
|
}
|
|
858
859
|
};
|
|
@@ -873,7 +874,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
873
874
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/newBaseRoot/iot/devices',
|
|
874
875
|
method: 'POST',
|
|
875
876
|
headers: {
|
|
876
|
-
'fiware-service': '
|
|
877
|
+
'fiware-service': 'smartgondor',
|
|
877
878
|
'fiware-servicepath': '/gardens'
|
|
878
879
|
},
|
|
879
880
|
json: utils.readExampleFile('./test/unit/examples/deviceProvisioningRequests/provisionNewDevice.json')
|
|
@@ -895,7 +896,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
895
896
|
should.not.exist(error);
|
|
896
897
|
response.statusCode.should.equal(201);
|
|
897
898
|
|
|
898
|
-
iotAgentLib.listDevices('
|
|
899
|
+
iotAgentLib.listDevices('smartgondor', '/gardens', function (error, results) {
|
|
899
900
|
results.devices.length.should.equal(1);
|
|
900
901
|
done();
|
|
901
902
|
});
|
|
@@ -925,7 +926,7 @@ describe('NGSI-LD - Device provisioning API: Provision devices', function () {
|
|
|
925
926
|
const options = {
|
|
926
927
|
url: 'http://localhost:' + iotAgentConfig.server.port + '/iot/devices/Light84',
|
|
927
928
|
headers: {
|
|
928
|
-
'fiware-service': '
|
|
929
|
+
'fiware-service': 'smartgondor',
|
|
929
930
|
'fiware-servicepath': '/gardens'
|
|
930
931
|
},
|
|
931
932
|
method: 'DELETE'
|
|
@@ -27,6 +27,7 @@
|
|
|
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 logger = require('logops');
|
|
32
33
|
const nock = require('nock');
|
|
@@ -57,7 +58,7 @@ const iotAgentConfig = {
|
|
|
57
58
|
type: 'Hgmm'
|
|
58
59
|
}
|
|
59
60
|
],
|
|
60
|
-
service: '
|
|
61
|
+
service: 'smartgondor',
|
|
61
62
|
subservice: 'gardens'
|
|
62
63
|
},
|
|
63
64
|
Termometer: {
|
|
@@ -69,24 +70,24 @@ const iotAgentConfig = {
|
|
|
69
70
|
}
|
|
70
71
|
],
|
|
71
72
|
active: [],
|
|
72
|
-
service: '
|
|
73
|
+
service: 'smartgondor',
|
|
73
74
|
subservice: 'gardens'
|
|
74
75
|
}
|
|
75
76
|
},
|
|
76
|
-
service: '
|
|
77
|
+
service: 'smartgondor',
|
|
77
78
|
subservice: 'gardens',
|
|
78
|
-
providerUrl: 'http://
|
|
79
|
+
providerUrl: 'http://smartgondor.com'
|
|
79
80
|
};
|
|
80
81
|
const device1 = {
|
|
81
82
|
id: 'light1',
|
|
82
83
|
type: 'Light',
|
|
83
|
-
service: '
|
|
84
|
+
service: 'smartgondor',
|
|
84
85
|
subservice: 'gardens'
|
|
85
86
|
};
|
|
86
87
|
const device2 = {
|
|
87
88
|
id: 'term2',
|
|
88
89
|
type: 'Termometer',
|
|
89
|
-
service: '
|
|
90
|
+
service: 'smartgondor',
|
|
90
91
|
subservice: 'gardens'
|
|
91
92
|
};
|
|
92
93
|
|
|
@@ -112,7 +113,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
112
113
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
113
114
|
// provisioning folder
|
|
114
115
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
115
|
-
.matchHeader('fiware-service', '
|
|
116
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
116
117
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
117
118
|
.reply(204);
|
|
118
119
|
|
|
@@ -120,7 +121,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
120
121
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent1.json'
|
|
121
122
|
);
|
|
122
123
|
contextBrokerMock
|
|
123
|
-
.matchHeader('fiware-service', '
|
|
124
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
124
125
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody)
|
|
125
126
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
126
127
|
|
|
@@ -146,7 +147,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
146
147
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent1.json'
|
|
147
148
|
);
|
|
148
149
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
149
|
-
.matchHeader('fiware-service', '
|
|
150
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
150
151
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody)
|
|
151
152
|
.reply(404);
|
|
152
153
|
|
|
@@ -172,7 +173,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
172
173
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent1.json'
|
|
173
174
|
);
|
|
174
175
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
175
|
-
.matchHeader('fiware-service', '
|
|
176
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
176
177
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody)
|
|
177
178
|
.reply(500);
|
|
178
179
|
|
|
@@ -201,7 +202,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
201
202
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent1.json'
|
|
202
203
|
);
|
|
203
204
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
204
|
-
.matchHeader('fiware-service', '
|
|
205
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
205
206
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody)
|
|
206
207
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
207
208
|
|
|
@@ -209,7 +210,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
209
210
|
// device provisioning functionality. Appropriate verification is done in tests under
|
|
210
211
|
// provisioning folder
|
|
211
212
|
contextBrokerMock
|
|
212
|
-
.matchHeader('fiware-service', '
|
|
213
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
213
214
|
.post('/ngsi-ld/v1/entityOperations/upsert/')
|
|
214
215
|
.reply(204);
|
|
215
216
|
|
|
@@ -220,7 +221,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
220
221
|
|
|
221
222
|
it("should return all the device's information", function (done) {
|
|
222
223
|
iotAgentLib.register(device1, function (error) {
|
|
223
|
-
iotAgentLib.getDevice('light1', '
|
|
224
|
+
iotAgentLib.getDevice('light1', 'smartgondor', 'gardens', function (error, data) {
|
|
224
225
|
should.not.exist(error);
|
|
225
226
|
should.exist(data);
|
|
226
227
|
data.type.should.equal('Light');
|
|
@@ -239,7 +240,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
239
240
|
'./test/unit/ngsi-ld/examples/contextAvailabilityRequests/registerIoTAgent1.json'
|
|
240
241
|
);
|
|
241
242
|
contextBrokerMock = nock('http://192.168.1.1:1026')
|
|
242
|
-
.matchHeader('fiware-service', '
|
|
243
|
+
.matchHeader('fiware-service', 'smartgondor')
|
|
243
244
|
.post('/ngsi-ld/v1/csourceRegistrations/', nockBody)
|
|
244
245
|
.reply(201, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
245
246
|
|
|
@@ -250,7 +251,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
250
251
|
|
|
251
252
|
it('should return a ENTITY_NOT_FOUND error', function (done) {
|
|
252
253
|
iotAgentLib.register(device1, function (error) {
|
|
253
|
-
iotAgentLib.getDevice('lightUnexistent', '
|
|
254
|
+
iotAgentLib.getDevice('lightUnexistent', 'smartgondor', 'gardens', function (error, data) {
|
|
254
255
|
should.exist(error);
|
|
255
256
|
should.not.exist(data);
|
|
256
257
|
error.code.should.equal(404);
|
|
@@ -283,7 +284,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
283
284
|
contextBrokerMock.post('/ngsi-ld/v1/entityOperations/upsert/').reply(204);
|
|
284
285
|
|
|
285
286
|
contextBrokerMock
|
|
286
|
-
.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d')
|
|
287
|
+
.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d', '')
|
|
287
288
|
.reply(204, null, { Location: '/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d' });
|
|
288
289
|
|
|
289
290
|
iotAgentLib.activate(iotAgentConfig, function (error) {
|
|
@@ -299,7 +300,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
299
300
|
});
|
|
300
301
|
|
|
301
302
|
it('should update the devices information in Context Broker', function (done) {
|
|
302
|
-
iotAgentLib.unregister(device1.id, '
|
|
303
|
+
iotAgentLib.unregister(device1.id, 'smartgondor', 'gardens', function (error) {
|
|
303
304
|
should.not.exist(error);
|
|
304
305
|
contextBrokerMock.done();
|
|
305
306
|
done();
|
|
@@ -328,7 +329,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
328
329
|
// provisioning folder
|
|
329
330
|
contextBrokerMock.post('/ngsi-ld/v1/entityOperations/upsert/').reply(204);
|
|
330
331
|
|
|
331
|
-
contextBrokerMock.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d').reply(500);
|
|
332
|
+
contextBrokerMock.delete('/ngsi-ld/v1/csourceRegistrations/6319a7f5254b05844116584d', '').reply(500);
|
|
332
333
|
|
|
333
334
|
iotAgentLib.activate(iotAgentConfig, function (error) {
|
|
334
335
|
async.series(
|
|
@@ -344,7 +345,7 @@ describe('NGSI-LD - IoT Agent Device Registration', function () {
|
|
|
344
345
|
|
|
345
346
|
it('should not remove the device from the internal registry');
|
|
346
347
|
it('should return a UNREGISTRATION_ERROR error to the caller', function (done) {
|
|
347
|
-
iotAgentLib.unregister(device1.id, '
|
|
348
|
+
iotAgentLib.unregister(device1.id, 'smartgondor', 'gardens', function (error) {
|
|
348
349
|
should.exist(error);
|
|
349
350
|
should.exist(error.name);
|
|
350
351
|
error.name.should.equal('UNREGISTRATION_ERROR');
|