responselike

A response-like object for mocking a Node.js HTTP response stream

Usage no npm install needed!

<script type="module">
  import responselike from 'https://cdn.skypack.dev/responselike';
</script>

README

responselike

A response-like object for mocking a Node.js HTTP response stream

Build Status Coverage Status npm npm

Returns a streamable response object similar to a Node.js HTTP response stream. Useful for formatting cached responses so they can be consumed by code expecting a real response.

Install

npm install --save responselike

Or if you're just using for testing you'll want:

npm install --save-dev responselike

Usage

const Response = require('responselike');

const response = new Response(200, { foo: 'bar' }, Buffer.from('Hi!'), 'https://example.com');

response.statusCode;
// 200
response.headers;
// { foo: 'bar' }
response.body;
// <Buffer 48 69 21>
response.url;
// 'https://example.com'

response.pipe(process.stdout);
// Hi!

API

new Response(statusCode, headers, body, url)

Returns a streamable response object similar to a Node.js HTTP response stream.

statusCode

Type: number

HTTP response status code.

headers

Type: object

HTTP headers object. Keys will be automatically lowercased.

body

Type: buffer

A Buffer containing the response body. The Buffer contents will be streamable but is also exposed directly as response.body.

url

Type: string

Request URL string.

License

MIT © Luke Childs