diff --git a/lib/xmpp/index.js b/lib/xmpp/index.js index 89d1d7f..69207bf 100644 --- a/lib/xmpp/index.js +++ b/lib/xmpp/index.js @@ -73,6 +73,7 @@ module.exports = (logger, config) => { // handle error xmpp.on('error', function (err) { logger.error(err) + process.exit(99) }) // connect diff --git a/test/xmpp.js b/test/xmpp.js index 2600ed6..1f21189 100644 --- a/test/xmpp.js +++ b/test/xmpp.js @@ -123,7 +123,13 @@ describe('XMPP component', () => { }) describe('XMPP server send an error', () => { - it('Should log error only', (done) => { + before(() => { + sinon.stub(process, 'exit') + }) + after(() => { + process.exit.restore() + }) + it('Should log error and exit with 99 code', (done) => { let error = 'This the error text' simpleXmppEvents.emit('error', error) require('fs').readFile(config.logger.file.path + config.logger.file.filename, 'utf8', (err, data) => { @@ -131,6 +137,7 @@ describe('XMPP component', () => { throw err } data.should.match(new RegExp(error + '\n$')) + sinon.assert.calledWith(process.exit, 99) done() }) })