UNPKG

iqs-clients-mqttgateway-node

Version:
93 lines (73 loc) 3.83 kB
let assert = require('chai').assert; let async = require('async'); import { Descriptor } from 'pip-services3-commons-node'; import { ConfigParams } from 'pip-services3-commons-node'; import { References } from 'pip-services3-commons-node'; import { ConsoleLogger } from 'pip-services3-components-node'; import { OrganizationsMemoryClientV1 } from 'pip-clients-organizations-node'; import { GatewaysMemoryClientV1 } from 'iqs-clients-gateways-node'; import { DeviceTypeV1 } from 'iqs-clients-devices-node'; import { DevicesMemoryClientV1 } from 'iqs-clients-devices-node'; import { StateUpdatesNullClientV1 } from 'iqs-clients-stateupdates-node'; import { BeaconsNullClientV1 } from 'pip-clients-beacons-node'; import { MqttGatewayConnector } from 'iqs-services-mqttgateway-node' import { MqttGatewayController } from 'iqs-services-mqttgateway-node'; import { MqttGatewayHttpServiceV1 } from 'iqs-services-mqttgateway-node'; import { IMqttGatewayClientV1 } from '../../src/version1/IMqttGatewayClientV1'; import { MqttGatewayHttpClientV1 } from '../../src/version1/MqttGatewayHttpClientV1'; import { MqttGatewayClientFixtureV1 } from './MqttGatewayClientFixtureV1'; var httpConfig = ConfigParams.fromTuples( "connection.protocol", "http", "connection.host", "localhost", "connection.port", 3000 ); suite('MqttGatewayHttpClientV1', ()=> { let service: MqttGatewayHttpServiceV1; let client: MqttGatewayHttpClientV1; let fixture: MqttGatewayClientFixtureV1; suiteSetup((done) => { let logger = new ConsoleLogger(); let connector = new MqttGatewayConnector(); let controller = new MqttGatewayController(); service = new MqttGatewayHttpServiceV1(); service.configure(httpConfig); let organizationsClient = new OrganizationsMemoryClientV1(); let gatewaysClient = new GatewaysMemoryClientV1(); let devicesClient = new DevicesMemoryClientV1(); devicesClient.createDevice( null, { id: '123', org_id: '1', status: 'active', type: DeviceTypeV1.IoTDevice, udi: '123' }, (err, device) => {} ); let references: References = References.fromTuples( new Descriptor('pip-services', 'logger', 'console', 'default', '1.0'), logger, new Descriptor('pip-services-organizations', 'client', 'memory', 'default', '1.0'), organizationsClient, new Descriptor('iqs-services-gateways', 'client', 'memory', 'default', '1.0'), gatewaysClient, new Descriptor('iqs-services-devices', 'client', 'memory', 'default', '1.0'), devicesClient, new Descriptor('iqs-services-stateupdates', 'client', 'null', 'default', '1.0'), new StateUpdatesNullClientV1(), new Descriptor('pip-services-beacons', 'client', 'null', 'default', '1.0'), new BeaconsNullClientV1(), new Descriptor('iqs-services-mqttgateway', 'connector', 'simple', 'default', '1.0'), connector, new Descriptor('iqs-services-mqttgateway', 'controller', 'default', 'default', '1.0'), controller, new Descriptor('iqs-services-mqttgateway', 'service', 'http', 'default', '1.0'), service ); controller.setReferences(references); service.setReferences(references); client = new MqttGatewayHttpClientV1(); client.setReferences(references); client.configure(httpConfig); fixture = new MqttGatewayClientFixtureV1(client); service.open(null, (err) => { client.open(null, done); }); }); suiteTeardown((done) => { client.close(null); service.close(null, done); }); test('Signaling', (done) => { fixture.testSignaling(done); }); test('Commanding', (done) => { fixture.testCommanding(done); }); });