From cbe955c2279bde938ae68b92291ed285b9746b37 Mon Sep 17 00:00:00 2001 From: Robert Nagy Date: Sun, 12 Apr 2020 14:01:39 +0200 Subject: [PATCH] test: add net regression test Ensure that the socket is not destroyed when the 'end' event is emitted. Refs: https://github.com/nodejs/node/pull/32780#issuecomment-612602551 PR-URL: https://github.com/nodejs/node/pull/32794 Reviewed-By: Luigi Pinca Reviewed-By: Anna Henningsen --- test/parallel/test-net-end-destroyed.js | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 test/parallel/test-net-end-destroyed.js diff --git a/test/parallel/test-net-end-destroyed.js b/test/parallel/test-net-end-destroyed.js new file mode 100644 index 00000000000000..1670c1b92b21fb --- /dev/null +++ b/test/parallel/test-net-end-destroyed.js @@ -0,0 +1,26 @@ +'use strict'; + +const common = require('../common'); +const net = require('net'); +const assert = require('assert'); + +const server = net.createServer(); + +server.on('connection', common.mustCall()); + +// Ensure that the socket is not destroyed when the 'end' event is emitted. + +server.listen(common.mustCall(function() { + const socket = net.createConnection({ + port: server.address().port + }); + + socket.on('connect', common.mustCall(function() { + socket.on('end', common.mustCall(function() { + assert.strictEqual(socket.destroyed, false); + server.close(); + })); + + socket.end(); + })); +}));