Files
desktop-app/node_modules/needle/test/helpers.js
2015-09-24 13:31:53 +08:00

39 lines
777 B
JavaScript

var http = require('http');
var helpers = {};
helpers.server = function(opts, cb) {
var default_headers = {'Content-Type': 'application/json'};
var mirror_response = function(req) {
return JSON.stringify({
headers: req.headers,
body: req.body
})
}
var finish = function(req, res) {
res.writeHead(opts.code || 200, opts.headers || default_headers);
res.end(opts.response || mirror_response(req));
}
var server = http.createServer(function(req, res){
req.setEncoding('utf8'); // get as string
req.body = '';
req.on('data', function(str) { req.body += str })
setTimeout(function(){
finish(req, res);
}, opts.wait || 0);
})
server.listen(opts.port, cb);
return server;
}
module.exports = helpers;