Socket
Socket
Sign inDemoInstall

node-mocks-http

Package Overview
Dependencies
0
Maintainers
3
Versions
60
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.2.4 to 1.2.5

7

lib/mockRequest.js

@@ -31,2 +31,4 @@ 'use strict';

var url = require('url');
function createRequest(options) {

@@ -44,2 +46,3 @@

mockRequest.url = (options.url) ? options.url : '';
mockRequest.path = (options.url) ? url.parse(options.url).pathname : '';
mockRequest.params = (options.params) ? options.params : {};

@@ -54,4 +57,4 @@ mockRequest.session = (options.session) ? options.session : {};

//parse query string from url to object
if (Object.keys(mockRequest.query).length == 0) {
mockRequest.query = require('querystring').parse(mockRequest.url.split('?')[1])
if (Object.keys(mockRequest.query).length === 0) {
mockRequest.query = require('querystring').parse(mockRequest.url.split('?')[1]);
}

@@ -58,0 +61,0 @@

@@ -53,3 +53,3 @@ 'use strict';

mockResponse.statusCode = -1;
mockResponse.statusCode = 200;
mockResponse.cookies = {};

@@ -198,7 +198,2 @@

mockResponse.setHeader('Content-Type', 'application/json');
// Sets default status code if none has been specify.
if(mockResponse.statusCode === -1) {
mockResponse.statusCode = 200;
}
if (a) {

@@ -270,16 +265,34 @@ if (typeof a === 'number') {

/**
* Function: header
*
* An alias of either getHeader or setHeader depending on
* the amount of passed parameters.
*/
mockResponse.header = function(name, value) {
if (typeof value !== 'undefined') {
return mockResponse.setHeader(name, value);
/**
* Set header `field` to `val`, or pass
* an object of header fields.
*
* Examples:
*
* res.set('Foo', ['bar', 'baz']);
* res.set('Accept', 'application/json');
* res.set({ Accept: 'text/plain', 'X-API-Key': 'tobi' });
*
* Aliased as `mockResponse.header()`.
*
* @param {String|Object|Array} field
* @param {String} val
* @return {ServerResponse} for chaining
* @api public
*/
mockResponse.set = mockResponse.header = function header(field, val) {
if (arguments.length === 2) {
if (Array.isArray(val)) {
val = val.map(String);
}
else {
val = String(val);
}
mockResponse.setHeader(field, val);
} else {
return mockResponse.getHeader(name);
for (var key in field) {
mockResponse.setHeader(key, field[key]);
}
}
return mockResponse;
};

@@ -303,3 +316,3 @@

*/
mockResponse.set = mockResponse.setHeader = function(name, value) {
mockResponse.setHeader = function(name, value) {
_headers[name] = value;

@@ -342,2 +355,3 @@ return value;

mockResponse.statusCode = 302;
_redirectUrl = a;

@@ -344,0 +358,0 @@ break;

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

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

@@ -8,0 +8,0 @@ "license" : "MIT",

@@ -120,3 +120,10 @@ node-mocks-http

* v 1.2.5
* Add `path` to request similar to how express does `req.path`
* Emit send and end events for json response too
* res.set() works like Express when passed an object #33
* Set mockResponse.statusCode default to 200, instead of -1
License

@@ -123,0 +130,0 @@ ---

@@ -199,1 +199,11 @@ /**

};
exports['path(pathname) has to be parsed from url'] = function(test) {
var request = httpMocks.createRequest({
url: 'http://www.whatever.com/iamthepath?a=1&b=2&c=3'
});
test.equal(request.path, '/iamthepath');
test.done();
}

@@ -23,3 +23,3 @@ /**

var response = httpMocks.createResponse();
test.equal(-1, response.statusCode);
test.equal(200, response.statusCode);
test.equal("", response._getData());

@@ -94,2 +94,16 @@ test.ok(!response._isUTF8());

exports['set - Can set multiple headers with object'] = function (test) {
var response = httpMocks.createResponse();
response.set({
'foo': 'bar',
'bling': 'blang'
});
test.equal('bar', response.getHeader('foo'));
test.equal('blang', response.getHeader('bling'));
test.done();
};
exports['writeHead - Simple verification'] = function (test) {

@@ -227,2 +241,3 @@ var response = httpMocks.createResponse();

test.equal(response._getRedirectUrl(), url);
test.equal(response._getStatusCode(), 302);
test.done();

@@ -229,0 +244,0 @@ };

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