UNPKG

@arisan/data-api

Version:

The Universal Database API Gateway for CLIO's Modules

75 lines (59 loc) 2.79 kB
'use strict'; var _powMongodbFixtures = require('pow-mongodb-fixtures'); var _mongodbUri = require('mongodb-uri'); var _mongodbUri2 = _interopRequireDefault(_mongodbUri); var _DataAPI = require('../DataAPI'); var _DataAPI2 = _interopRequireDefault(_DataAPI); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /* eslint-disable import/newline-after-import, import/first */ //region 1. Platform Libraries const request = require('supertest'); //endregion //region 2. Project Libraries //endregion describe('Route .../archive-info', () => { const mongo = _mongodbUri2.default.parse(process.env.CLIO_MONGO_URL); const fixtures = (0, _powMongodbFixtures.connect)(mongo.database, { host: mongo.hosts[0].host, port: mongo.hosts[0].port, user: mongo.username, pass: mongo.password }); const dataAPI = new _DataAPI2.default(); const id = '123456789a123456789b1234'; const badID = '123456789a123456789b1235'; const index = 0; const badIndex = 1; before(function before(done) { this.timeout(5000); fixtures.clearAllAndLoad({ cameras: [{ _id: (0, _powMongodbFixtures.createObjectId)(id), streams: { 0: { rtsp_url: 'rtsp://url' } } }] }, err => { if (err) { throw new Error(err.message); } dataAPI.initialize({ environment: 'unit-test', heartbeatInterval: 10, logLevel: 'DEBUG', mongoUrl: process.env.CLIO_MONGO_URL, port: 15925 }); dataAPI.start(done); }); }); it('GET existing stream should succeed', done => { request(dataAPI.expressApp).get(`/cameras/${ id }/streams/${ index }/archive-info`).expect(200).end( /** @type function */done); }); it('GET non-existing stream should fail', done => { request(dataAPI.expressApp).get(`/cameras/${ id }/streams/${ badIndex }/archive-info`).expect(500).end( /** @type function */done); }); it('GET non-existing camera should fail', done => { request(dataAPI.expressApp).get(`/cameras/${ badID }/streams/${ index }/archive-info`).expect(500).end( /** @type function */done); }); after(done => dataAPI.stop(done)); }); //# sourceMappingURL=mountArchiveInfo.spec.js.map