node-mocks-http
Advanced tools
Comparing version
@@ -6,2 +6,3 @@ /** | ||
*/ | ||
const utils = require('./utils'); | ||
@@ -16,9 +17,4 @@ /** | ||
function createHeaders(headers = {}) { | ||
return new Proxy(headers, { | ||
return new Proxy(utils.convertKeysToLowerCase(headers), { | ||
get(target, prop) { | ||
// Direct property access for Express.js style | ||
if (typeof prop === 'string' && prop in target) { | ||
return target[prop]; | ||
} | ||
// Handle Headers interface methods | ||
@@ -91,3 +87,3 @@ switch (prop) { | ||
default: | ||
return target[prop]; | ||
return target[typeof prop === 'string' ? prop.toLowerCase() : prop]; | ||
} | ||
@@ -94,0 +90,0 @@ }, |
@@ -37,3 +37,2 @@ /** | ||
const querystring = require('querystring'); | ||
const utils = require('./utils'); | ||
const { createHeaders } = require('./headers'); | ||
@@ -80,4 +79,3 @@ | ||
// Create headers using the Headers.js module | ||
const originalHeaders = options.headers ? utils.convertKeysToLowerCase(options.headers) : {}; | ||
mockRequest.headers = createHeaders(originalHeaders); | ||
mockRequest.headers = createHeaders(options.headers); | ||
@@ -137,10 +135,3 @@ mockRequest.body = options.body ? options.body : {}; | ||
mockRequest.getHeader = function getHeader(name) { | ||
const headerName = name.toLowerCase(); | ||
switch (headerName) { | ||
case 'referer': | ||
case 'referrer': | ||
return mockRequest.headers.referrer || mockRequest.headers.referer; | ||
default: | ||
return mockRequest.headers[headerName]; | ||
} | ||
return mockRequest.headers.get(name); | ||
}; | ||
@@ -381,3 +372,3 @@ mockRequest.header = mockRequest.getHeader; | ||
mockRequest._setHeadersVariable = function _setHeadersVariable(variable, value) { | ||
mockRequest.headers[variable.toLowerCase()] = value; | ||
mockRequest.headers[variable] = value; | ||
}; | ||
@@ -384,0 +375,0 @@ |
@@ -5,3 +5,3 @@ { | ||
"description": "Mock 'http' objects for testing Express, Next.js and Koa routing functions", | ||
"version": "1.17.0", | ||
"version": "1.17.1", | ||
"homepage": "https://github.com/eugef/node-mocks-http", | ||
@@ -8,0 +8,0 @@ "bugs": { |
85737
-0.54%2210
-0.54%