summaryrefslogtreecommitdiff
path: root/test/parallel/test-http-server-close-idle-wait-response.js
blob: 429c653f7463ce84b04494877187541009581a16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
'use strict';

const common = require('../common');

const { createServer, get } = require('http');

const server = createServer(common.mustCall(function(req, res) {
  req.resume();

  setTimeout(common.mustCall(() => {
    res.writeHead(204, { 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=1' });
    res.end();
  }), common.platformTimeout(1000));
}));

server.listen(0, function() {
  const port = server.address().port;

  get(`http://localhost:${port}`, common.mustCall((res) => {
    server.close();
  })).on('finish', common.mustCall(() => {
    setTimeout(common.mustCall(() => {
      server.closeIdleConnections();
    }), common.platformTimeout(500));
  }));
});