1 | # comets
|
2 |
|
3 | [![npm version][npm-src]][npm-href]
|
4 | [![Bundle size][bundlephobia-src]][bundlephobia-href]
|
5 |
|
6 | Create a one-off server for testing http request listener.
|
7 |
|
8 | ## Usage
|
9 |
|
10 | ```bash
|
11 | npm install comets
|
12 | ```
|
13 |
|
14 | ```js
|
15 | import assert from 'assert'
|
16 | import fetch from 'node-fetch'
|
17 | import { createServer } from 'comets'
|
18 |
|
19 | async 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 | ```typescript
|
38 | async function createServer (handler: http.RequestListener, count: number = 1)
|
39 | ```
|
40 |
|
41 | - __`handler`__ the request listener to test
|
42 | - __`count`__ the server will close after given requests count (default: `1`)
|
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 | [bundlephobia-src]: https://badgen.net/bundlephobia/minzip/comets
|
52 | [bundlephobia-href]: https://bundlephobia.com/result?p=comets
|
53 | [license-src]: https://badgen.net/badge/license/MIT
|
54 | [license-href]: LICENSE.md
|