UNPKG

1.34 kBMarkdownView Raw
1# comets
2
3[![npm version][npm-src]][npm-href]
4[![package size][size-src]][size-href]
5
6Create a one-off server for testing http request listener.
7
8## Usage
9
10```bash
11npm install comets
12```
13
14```js
15import assert from 'assert'
16import fetch from 'node-fetch'
17import { createServer } from 'comets'
18
19async function test () {
20 // The handler to test
21 const requestHandler = (req, res) => res.end('yo')
22
23 // Create a one-off server for testing
24 const address = await createServer(requestHandler)
25
26 // Send test request, the server will close after this request
27 const result = await fetch(address).then(res => res.text())
28
29 assert.equal(result, 'yo')
30}
31```
32
33## API
34
35### `createServer()`
36
37`async createServer(handler: http.RequestListener, count: number = 1) => Promise<string>`
38
39- __`handler`__: the request listener for creating http server
40- __`count`__: the number of requests allowed before server closed (default: 1)
41
42returns __`Promise<string>`__: the server address (`http://localhost:<PORT>`).
43
44## License
45
46[![License][license-src]][license-href]
47
48
49[npm-src]: https://badgen.net/npm/v/comets
50[npm-href]: https://www.npmjs.com/package/comets
51[size-src]: https://badgen.net/packagephobia/install/comets
52[size-href]: https://packagephobia.now.sh/result?p=comets
53[license-src]: https://badgen.net/badge/license/MIT
54[license-href]: LICENSE.md