Socket
Socket
Sign inDemoInstall

node-mocks-http

Package Overview
Dependencies
0
Maintainers
2
Versions
60
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.0.9 to 1.0.0

118

lib/mockResponse.js
/**
* File: mockResponse
*
*
* This file implements node.js's implementation of a 'response' object.
* Like all good mocks, the response file that can be called and used in
* Like all good mocks, the response file that can be called and used in
* place of a real HTTP response object.
*
*
* @author Howard Abrams <howard.abrams@gmail.com>

@@ -16,3 +16,3 @@ */

* Creates a new mock 'response' instance. All values are reset to the
* defaults.
* defaults.
*

@@ -41,4 +41,4 @@ * Parameters:

var writableStream = new (options.writableStream || WritableStream)();
var eventEmitter = new (options.eventEmitter || EventEmitter)();
var writableStream = new (options.writableStream || WritableStream)();
var eventEmitter = new (options.eventEmitter || EventEmitter)();

@@ -48,2 +48,12 @@ return {

cookies: {},
cookie: function(name, value, options) {
this.cookies[name] = { value: value, options: options };
},
clearCookie: function(name) {
delete this.cookies[name]
},
status: function(code) {

@@ -53,3 +63,3 @@ this.statusCode = code;

},
/**

@@ -59,3 +69,3 @@ * Function: writeHead

* The 'writeHead' function from node's HTTP API.
*
*
* Parameters:

@@ -71,5 +81,5 @@ *

}
this.statusCode = statusCode;
// Note: Not sure if the headers given in this function

@@ -85,7 +95,7 @@ // overwrite any headers specified earlier.

},
/**
* The 'send' function from node's HTTP API that returns data
* to the client. Can be called multiple times.
*
*
* @param data The data to return. Must be a string.

@@ -98,6 +108,6 @@ */

break;
case 2:
if (typeof a == 'number') {
this.statusCode = a;
this.statusCode = a;
_data += b;

@@ -108,3 +118,3 @@ }

this.statusCode = b;
console.warn("WARNING: Called 'send' with deprecated parameter order");
console.warn("WARNING: Called 'send' with deprecated parameter order");
}

@@ -116,3 +126,3 @@ else {

break;
case 3:

@@ -122,5 +132,5 @@ _data += a;

this.statusCode = c;
console.warn("WARNING: Called 'send' with deprecated three parameters");
console.warn("WARNING: Called 'send' with deprecated three parameters");
break;
default:

@@ -130,4 +140,4 @@ break;

},
/**

@@ -140,7 +150,7 @@ * Function: write

*
* data - The data to return. Must be a string. Appended to
* data - The data to return. Must be a string. Appended to
* previous calls to data.
* encoding - Optional encoding value.
*/
write: function( data, encoding ) {

@@ -158,7 +168,7 @@ _data += data;

* the connection request. This must be called.
*
*
* Parameters:
*
* data - Optional data to return. Must be a string. Appended
* to previous calls to <send>.
* to previous calls to <send>.
* encoding - Optional encoding value.

@@ -217,42 +227,42 @@ */

writable: function(){
return writableStream.writable.apply(this, arguments);
writable: function(){
return writableStream.writable.apply(this, arguments);
},
// end: function(){
// return writableStream.end.apply(this, arguments);
// end: function(){
// return writableStream.end.apply(this, arguments);
// },
destroy: function(){
return writableStream.destroy.apply(this, arguments);
destroy: function(){
return writableStream.destroy.apply(this, arguments);
},
destroySoon: function(){
return writableStream.destroySoon.apply(this, arguments);
destroySoon: function(){
return writableStream.destroySoon.apply(this, arguments);
},
addListener: function(event, listener){
return eventEmitter.addListener.apply(this, arguments);
addListener: function(event, listener){
return eventEmitter.addListener.apply(this, arguments);
},
on: function(event, listener){
return eventEmitter.on.apply(this, arguments);
on: function(event, listener){
return eventEmitter.on.apply(this, arguments);
},
once: function(event, listener){
return eventEmitter.once.apply(this, arguments);
once: function(event, listener){
return eventEmitter.once.apply(this, arguments);
},
removeListener: function(event, listener){
return eventEmitter.removeListener.apply(this, arguments);
removeListener: function(event, listener){
return eventEmitter.removeListener.apply(this, arguments);
},
removeAllListeners: function(event){
return eventEmitter.removeAllListeners.apply(this, arguments);
removeAllListeners: function(event){
return eventEmitter.removeAllListeners.apply(this, arguments);
},
setMaxListeners: function(n){
return eventEmitter.setMaxListeners.apply(this, arguments)
setMaxListeners: function(n){
return eventEmitter.setMaxListeners.apply(this, arguments)
},
listeners: function(event){
return eventEmitter.listeners.apply(this, arguments);
listeners: function(event){
return eventEmitter.listeners.apply(this, arguments);
},
emit: function(event){
return eventEmitter.emit.apply(this, arguments);
emit: function(event){
return eventEmitter.emit.apply(this, arguments);
},
//
//
//This mock object stores some state as well
//as some test-analysis functions:
/**

@@ -268,3 +278,3 @@ * Function: _isEndCalled

/**

@@ -309,3 +319,3 @@ * Function: _getHeaders

},
/**

@@ -316,3 +326,3 @@ * Function: _isUTF8

* this function return true. False otherwise.
*
*
* Returns:

@@ -348,2 +358,2 @@ *

};
};
};

@@ -5,3 +5,3 @@ {

"description": "Mock 'http' objects for testing Express routing functions",
"version": "0.0.9",
"version": "1.0.0",
"homepage": "http://www.github.com/howardabrams/node-mocks-http",

@@ -8,0 +8,0 @@ "keywords": [

@@ -28,5 +28,5 @@ node-mocks-http

var response = httpMocks.createResponse();
aroute(request, response);
var data = JSON.parse( response._getData() );

@@ -54,3 +54,3 @@ test.equal("Bob Dog", data.name);

var httpMocks = require('../lib/http-mock');
Design Decisions

@@ -74,2 +74,7 @@ ----------------

v 0.0.9
-------
* Add support for response cookies
v 0.0.8

@@ -102,3 +107,3 @@ -------

calling the `_setSessionVariable()` method, and read as an object.
v 0.0.3

@@ -114,3 +119,3 @@ -------

* Code refactoring of the `Response` mock.
v 0.0.1

@@ -117,0 +122,0 @@ -------

@@ -11,3 +11,3 @@ /**

var response = httpMocks.createResponse();
response.send("Hello", 'utf8');

@@ -35,3 +35,3 @@ response.send("World");

response.end("World");
test.equal("HelloWorld", response._getData());

@@ -47,3 +47,3 @@

response.end("Hello World");
test.equal("Hello World", response._getData());

@@ -57,6 +57,6 @@

var response = httpMocks.createResponse();
response.write("Hello", 'utf8');
response.end("World");
test.equal("HelloWorld", response._getData());

@@ -71,6 +71,6 @@

var response = httpMocks.createResponse();
response.setHeader('foo', 'bar');
response.setHeader('bling', 'blang');
test.equal('bar', response.getHeader('foo'));

@@ -81,3 +81,3 @@ test.equal('blang', response.getHeader('bling'));

test.ok( !response.getHeader('bling'));
test.done();

@@ -88,6 +88,6 @@ };

var response = httpMocks.createResponse();
var body = 'hello world';
response.end(body);
test.throws( function() {

@@ -101,3 +101,3 @@ response.setHead('Content-Length', body.length);

var response = httpMocks.createResponse();
var body = 'hello world';

@@ -108,3 +108,3 @@ response.writeHead(200, {

response.end(body);
test.equal(200, response._getStatusCode() );

@@ -120,6 +120,6 @@ test.equal(body, response._getData() );

var response = httpMocks.createResponse();
var body = 'hello world';
response.end(body);
test.throws( function() {

@@ -143,3 +143,3 @@ response.writeHead(200, {

var t = 'This is a weird status code';
var response = httpMocks.createResponse();

@@ -156,3 +156,3 @@ response.send(s, t);

var t = 'This is a weird status code';
var response = httpMocks.createResponse();

@@ -167,3 +167,3 @@ response.send(t, s);

exports['implement - WriteableStream'] = function(test){
var response = httpMocks.createResponse();
var response = httpMocks.createResponse();
test.equal(typeof(response.writable), 'function');

@@ -176,3 +176,3 @@ test.equal(typeof(response.destroy), 'function');

exports['implement - EventEmitter'] = function(test){
var response = httpMocks.createResponse();
var response = httpMocks.createResponse();
test.equal(typeof(response.addListener), 'function');

@@ -188,1 +188,22 @@ test.equal(typeof(response.on), 'function');

};
exports['cookies - Cookies creation'] = function(test) {
var response = httpMocks.createResponse();
test.deepEqual(response.cookies, {});
test.done();
};
exports['cookies - Cookies assignment'] = function(test) {
var response = httpMocks.createResponse();
response.cookie("egg", "chicken", { maxAge: 1000 });
test.deepEqual(response.cookies, {egg: {value: 'chicken', options: { maxAge: 1000 }}});
test.done();
};
exports['cookies - Cookie deletion'] = function(test) {
var response = httpMocks.createResponse();
response.cookie("egg", "chicken", { maxAge: 1000 });
response.clearCookie("egg");
test.deepEqual(response.cookies, {});
test.done();
};
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc