summaryrefslogtreecommitdiff
path: root/test/parallel/test-net-server-reset.js
blob: 3f9c049f3c3c36141933ba0dda907278dd7d4c1b (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
27
28
29
30
'use strict';
const common = require('../common');
const assert = require('assert');
const net = require('net');

const sockets = [];

const server = net.createServer(function(c) {
  c.on('close', common.mustCall());

  sockets.push(c);

  if (sockets.length === 2) {
    assert.strictEqual(server.close(), server);
    sockets.forEach((c) => c.resetAndDestroy());
  }
});

server.on('close', common.mustCall());

assert.strictEqual(server, server.listen(0, () => {
  net.createConnection(server.address().port)
    .on('error', common.mustCall((error) => {
      assert.strictEqual(error.code, 'ECONNRESET');
    }));
  net.createConnection(server.address().port)
    .on('error', common.mustCall((error) => {
      assert.strictEqual(error.code, 'ECONNRESET');
    }));
}));