blob: 784a7d443cff3693a6b7726ed5e83737905d2ddb [file] [log] [blame]
/**
* Stopper middleware is responsible for communicating with `karma stop`.
*/
const log = require('../logger').create('middleware:stopper')
function createStopperMiddleware (urlRoot) {
return function (request, response, next) {
if (request.url !== urlRoot + 'stop') return next()
response.writeHead(200)
log.info('Stopping server')
response.end('OK')
process.kill(process.pid, 'SIGINT')
}
}
createStopperMiddleware.$inject = ['config.urlRoot']
exports.create = createStopperMiddleware