{"library":"mock-express-response","title":"Mock Express Response","description":"Node.js library designed to facilitate unit and integration testing of Express.js middleware and route handlers by providing a mock HTTP response object. It emulates the standard Express `response` API, including methods like `json()`, `send()`, and `render()`, allowing developers to inspect the output and behavior of their Express-dependent code without launching a full HTTP server. The package, currently at version 0.3.0, appears to be unmaintained; its last update was in 2017 and the copyright dates to 2015. It is built upon `mock-res` for core HTTP response stream mocking and is intended to be used in conjunction with `mock-express-request` for a complete request/response mock pair. A key differentiator is its direct mirroring of the Express `res` object's internal state, allowing retrieval of rendered data via methods like `_getJSON()` and `_getString()`, which simplifies assertion writing in tests. Due to its age, compatibility with modern Express.js versions (v5+) and native ESM environments is not guaranteed.","language":"javascript","status":"abandoned","last_verified":"Wed Apr 22","install":{"commands":["npm install mock-express-response"],"cli":null},"imports":["const MockExpressResponse = require('mock-express-response');"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"const ejs = require('ejs');\nconst MockExpressRequest = require('mock-express-request');\nconst MockExpressResponse = require('mock-express-response');\n\n// Basic usage\nconst response = new MockExpressResponse();\n\n// With options, including a custom render engine and a mock request object\nconst request = new MockExpressRequest({\n  url: '/users/123',\n  method: 'GET'\n});\nconst responseWithOptions = new MockExpressResponse({\n    render: ejs.renderFile, // Use ejs as a template engine example\n    request: request\n});\n\n// Express response methods\nresponseWithOptions.json({ user: { id: 1, active: true } });\nresponseWithOptions.render('user.ejs', { user: { id: 1, name: 'Test User' } });\nresponseWithOptions.send('<p>User details page</p>');\n\n// To obtain the sent json response for testing\nconst jsonResult = responseWithOptions._getJSON();\nconsole.log('JSON Result:', jsonResult);\n\n// To obtain the text/html response for testing\nconst stringResult = responseWithOptions._getString();\nconsole.log('HTML Result:', stringResult);","lang":"javascript","description":"Demonstrates basic instantiation and usage of `MockExpressResponse` with common Express methods (`json`, `render`, `send`), and how to retrieve the mocked output for assertions.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}