const path = require('path') const spawn = require('cross-spawn') const httpServer = require('http-server') const server = httpServer.createServer({ root: path.resolve(__dirname, '../../') }) server.listen(8080) let args = process.argv.slice(2) if (args.indexOf('--config') === -1) { args = args.concat(['--config', 'test/e2e/nightwatch.config.js']) } if (args.indexOf('--env') === -1) { args = args.concat(['--env', 'chrome,phantomjs']) } const i = args.indexOf('--test') if (i > -1) { args[i + 1] = 'test/e2e/specs/' + args[i + 1] + '.js' } const runner = spawn('./node_modules/.bin/nightwatch', args, { stdio: 'inherit' }) runner.on('exit', function (code) { server.close() process.exit(code) }) runner.on('error', function (err) { server.close() throw err })