Skip to content

Instantly share code, notes, and snippets.

@wwqrd
Created November 21, 2012 14:42
Show Gist options
  • Save wwqrd/4125159 to your computer and use it in GitHub Desktop.
Save wwqrd/4125159 to your computer and use it in GitHub Desktop.
FakeServer
/*global*/
/*jslint node:true*/
'use strict';
var http = require( 'http' ),
url = require( 'url' ),
events = require( 'events' ),
util = require( 'util' ),
FakeServer;
FakeServer = function( port, addr, responses ) {
events.EventEmitter.call( this );
var server,
response,
self = this;
server = http.createServer(function (req, res) {
var endpoint = url.parse( req.url );
if( responses[endpoint.pathname] ) {
response = responses[endpoint.pathname];
res.writeHead(response.head[0], response.head[1]);
res.end( response.body );
} else {
res.writeHead(404);
res.end();
}
self.emit('request', req);
});
server.listen( port, addr );
};
util.inherits(FakeServer, events.EventEmitter);
module.exports = FakeServer;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment