/
home
/
infinitibizsol
/
irfarms.infinitibizsol.com
/
node_modules
/
avvio
/
test
/
File Upload :
llllll
Current File: /home/infinitibizsol/irfarms.infinitibizsol.com/node_modules/avvio/test/plugin-timeout.test.js
'use strict' const t = require('tap') const test = t.test const boot = require('..') const message = (code, name) => `${code}: plugin did not start in time: ${name}. You may have forgotten to call 'done' function or to resolve a Promise` test('timeout without calling next - callbacks', (t) => { t.plan(4) const app = boot({}, { timeout: 10 // 10 ms }) app.use(one) function one (app, opts, next) { // do not call next on purpose } app.ready((err) => { t.ok(err) t.equal(err.fn, one) t.equal(err.message, message('ERR_AVVIO_PLUGIN_TIMEOUT', 'one')) t.equal(err.code, 'ERR_AVVIO_PLUGIN_TIMEOUT') }) }) test('timeout without calling next - promises', (t) => { t.plan(4) const app = boot({}, { timeout: 10 // 10 ms }) app.use(two) function two (app, opts) { return new Promise(function (resolve) { // do not call resolve on purpose }) } app.ready((err) => { t.ok(err) t.equal(err.fn, two) t.equal(err.message, message('ERR_AVVIO_PLUGIN_TIMEOUT', 'two')) t.equal(err.code, 'ERR_AVVIO_PLUGIN_TIMEOUT') }) }) test('timeout without calling next - use file as name', (t) => { t.plan(3) const app = boot({}, { timeout: 10 // 10 ms }) app.use(require('./fixtures/plugin-no-next')) app.ready((err) => { t.ok(err) t.equal(err.message, message('ERR_AVVIO_PLUGIN_TIMEOUT', require.resolve('./fixtures/plugin-no-next'))) t.equal(err.code, 'ERR_AVVIO_PLUGIN_TIMEOUT') }) }) test('timeout without calling next - use code as name', (t) => { t.plan(3) const app = boot({}, { timeout: 10 // 10 ms }) app.use(function (app, opts, next) { // do not call next on purpose - code as name }) app.ready((err) => { t.ok(err) t.equal(err.message, message('ERR_AVVIO_PLUGIN_TIMEOUT', 'function (app, opts, next) { -- // do not call next on purpose - code as name')) t.equal(err.code, 'ERR_AVVIO_PLUGIN_TIMEOUT') }) }) test('does not keep going', (t) => { t.plan(2) const app = boot({}, { timeout: 10 // 10 ms }) app.use(function three (app, opts, next) { next(new Error('kaboom')) }) app.ready((err) => { t.ok(err) t.equal(err.message, 'kaboom') }) }) test('throw in override without autostart', (t) => { t.plan(2) const server = { my: 'server' } const app = boot(server, { timeout: 10, autostart: false }) app.override = function (s) { throw new Error('kaboom') } app.use(function (s, opts, cb) { t.fail('this is never reached') }) setTimeout(function () { app.ready((err) => { t.ok(err) t.equal(err.message, 'kaboom') }) }, 20) }) test('timeout without calling next in ready and ignoring the error', (t) => { t.plan(11) const app = boot({}, { timeout: 10, // 10 ms autostart: false }) let preReady = false app.use(function one (app, opts, next) { t.pass('loaded') app.ready(function readyOk (err, done) { t.notOk(err) t.pass('first ready called') done() }) next() }) app.on('preReady', () => { t.pass('preReady should be called') preReady = true }) app.on('start', () => { t.pass('start should be called') }) app.ready(function onReadyWithoutDone (err, done) { t.pass('wrong ready called') t.ok(preReady, 'preReady already called') t.notOk(err) // done() // Don't call done }) app.ready(function onReadyTwo (err) { t.ok(err) t.equal(err.message, message('ERR_AVVIO_READY_TIMEOUT', 'onReadyWithoutDone')) t.equal(err.code, 'ERR_AVVIO_READY_TIMEOUT') // don't rethrow the error }) app.start() }) test('timeout without calling next in ready and rethrowing the error', (t) => { t.plan(11) const app = boot({}, { timeout: 10, // 10 ms autostart: true }) app.use(function one (app, opts, next) { t.pass('loaded') app.ready(function readyOk (err, done) { t.ok(err) t.equal(err.message, message('ERR_AVVIO_READY_TIMEOUT', 'onReadyWithoutDone')) t.equal(err.code, 'ERR_AVVIO_READY_TIMEOUT') done(err) }) next() }) app.on('preReady', () => { t.pass('preReady should be called') }) app.on('start', () => { t.pass('start should be called in any case') }) app.ready(function onReadyWithoutDone (err, done) { t.pass('wrong ready called') t.notOk(err) // done() // Don't call done }) app.ready(function onReadyTwo (err, done) { t.ok(err) t.equal(err.message, message('ERR_AVVIO_READY_TIMEOUT', 'onReadyWithoutDone')) t.equal(err.code, 'ERR_AVVIO_READY_TIMEOUT') done(err) }) app.start() })
Copyright ©2k19 -
Hexid
|
Tex7ure