You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
874 B
JavaScript
40 lines
874 B
JavaScript
8 years ago
|
/* eslint-disable */
|
||
|
const express = require('express'); // eslint-disable-line import/no-extraneous-dependencies
|
||
|
const request = require('request');
|
||
|
|
||
|
const app = express();
|
||
|
var server
|
||
|
|
||
|
const start = () => {
|
||
|
app.use('/', (req, res) => {
|
||
|
const url = req.url.slice(1);
|
||
|
|
||
|
const options = {
|
||
|
url,
|
||
|
// Don't set encoding; fixes issues
|
||
|
// w/gzipped responses
|
||
|
encoding: null,
|
||
|
// Accept cookies
|
||
|
jar: true,
|
||
|
// Accept and decode gzip
|
||
|
gzip: true,
|
||
|
// Follow any redirect
|
||
|
followAllRedirects: true,
|
||
|
};
|
||
|
req.pipe(request(options)).pipe(res);
|
||
|
});
|
||
|
|
||
|
server = app.listen(process.env.PORT || 3000);
|
||
|
}
|
||
|
|
||
|
const stop = () => {
|
||
|
server && server.close()
|
||
|
}
|
||
|
|
||
|
if (!process.env.CI) {
|
||
|
start()
|
||
|
require('child_process').execSync('./node_modules/karma/bin/karma start ./scripts/karma.conf.js', {stdio:[0,1,2]});
|
||
|
stop()
|
||
|
}
|
||
|
|