@arisan/data-api
Version:
The Universal Database API Gateway for CLIO's Modules
69 lines (56 loc) • 1.99 kB
JavaScript
;
var _DataAPI = require('../DataAPI');
var _DataAPI2 = _interopRequireDefault(_DataAPI);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/* eslint-disable import/first */
//region 1. Platform Libraries
const request = require('supertest');
//endregion
//region 2. Project Libraries
//endregion
describe('Route /streamers', () => {
const dataAPI = new _DataAPI2.default();
before(function before(done) {
this.timeout(3000);
dataAPI.initialize({
environment: 'unit-test',
heartbeatInterval: 10,
logLevel: 'ERROR',
mongoUrl: process.env.CLIO_MONGO_URL,
port: 15925
});
dataAPI.start(done);
});
let streamerID;
describe('POST', () => {
it('should create new streamer', done => {
request(dataAPI.expressApp).post('/streamers').send({
port: 15925,
publicIp: '19.19.19.19'
}).expect(201).expect(res => {
if (res.text.length !== 24) {
throw new Error('Invalid Streamer ID');
}
streamerID = res.text;
}).end( /** @type function */done);
});
});
describe('PUT', () => {
it('should update existing streamer', done => {
request(dataAPI.expressApp).put(`/streamers/${streamerID}`).send({
streamIds: [],
cpuLoad: 12.3,
mem: {
load: 10.0,
current: 102.4,
total: 1024
}
}).expect(200).end( /** @type function */done);
});
it('should fail if body empty', done => {
request(dataAPI.expressApp).put(`/streamers/${streamerID}`).expect(400).end( /** @type function */done);
});
});
after(done => dataAPI.stop(done));
});
//# sourceMappingURL=mountStreamers.spec.js.map