18 lines
517 B
JavaScript
Executable file
18 lines
517 B
JavaScript
Executable file
/**
|
|
* 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
|