@arisan/data-api
Version:
The Universal Database API Gateway for CLIO's Modules
69 lines (56 loc) • 3.1 kB
JavaScript
'use strict';
var _chai = require('chai');
var _DataAPI = require('./DataAPI');
var _DataAPI2 = _interopRequireDefault(_DataAPI);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
//endregion
//region T. Tests
//region 1. Platform Libraries
describe('Initialization', () => {
it('should initialize with options', () => {
const dataAPI = new _DataAPI2.default();
const initResult = dataAPI.initialize({
environment: 'unit-test',
heartbeatInterval: 42,
logglySubdomain: process.env.CLIO_LOGGLY_SUBDOMAIN,
logglyToken: process.env.CLIO_LOGGLY_TOKEN,
logLevel: 'ERROR',
mongoUrl: process.env.CLIO_MONGO_URL,
port: 15926
});
_chai.assert.equal(true, initResult);
_chai.assert.equal('unit-test', dataAPI.environment);
_chai.assert.equal(42, _DataAPI2.default.heartbeatInterval);
_chai.assert.equal(true, !!_DataAPI.logger);
_chai.assert.deepEqual(['console', 'dailyRotateFile', 'loggly'], Object.keys(_DataAPI.logger.transports));
_chai.assert.equal('ERROR', dataAPI.logLevel.name);
_chai.assert.equal(process.env.CLIO_MONGO_URL, dataAPI.mongoUrl);
_chai.assert.equal(15926, dataAPI.port);
});
it('should initialize without options', () => {
const dataAPI = new _DataAPI2.default();
_chai.assert.equal(true, dataAPI.initialize());
_chai.assert.equal('', dataAPI.environment);
_chai.assert.equal(10, _DataAPI2.default.heartbeatInterval);
_chai.assert.equal(true, !!_DataAPI.logger);
_chai.assert.deepEqual(['console', 'dailyRotateFile'], Object.keys(_DataAPI.logger.transports));
_chai.assert.equal('DEBUG', dataAPI.logLevel.name);
_chai.assert.equal('mongodb://localhost', dataAPI.mongoUrl);
_chai.assert.equal(15925, dataAPI.port);
});
it('should return false if initialize with heartbeat interval of 0', () => {
_chai.assert.equal(false, new _DataAPI2.default().initialize({ heartbeatInterval: 0 }));
});
it('should return false if initialize with Mongo URL of invalid scheme', () => {
_chai.assert.equal(false, new _DataAPI2.default().initialize({ mongoUrl: 'invalid://localhost' }));
});
it('should return false if initialize with out of range port', () => {
_chai.assert.equal(false, new _DataAPI2.default().initialize({ port: -1 }));
_chai.assert.equal(false, new _DataAPI2.default().initialize({ port: 0 }));
_chai.assert.equal(false, new _DataAPI2.default().initialize({ port: 70000 }));
});
});
//endregion
//endregion
//region 2. Project Libraries
//# sourceMappingURL=DataAPI.spec.js.map