diff options
author | Rich Trott <rtrott@gmail.com> | 2018-03-30 06:15:32 -0700 |
---|---|---|
committer | Beth Griggs <Bethany.Griggs@uk.ibm.com> | 2018-12-04 15:44:11 +0000 |
commit | a7b3274af4e17328e5247f5d7c3e962e2c01358a (patch) | |
tree | 161accc11aabaa84a4de649e82c9be6df0b38f09 | |
parent | 33b7c500366862297badf99d49cf7fbf72ee47e3 (diff) | |
download | node-new-a7b3274af4e17328e5247f5d7c3e962e2c01358a.tar.gz |
test: fix flaky test-cluster-send-handle-twice
Use `common.mustCall()` to make sure connection callback runs exactly
once.
Use `connect` event instead of `setTimeout` to avoid test failing if
timer runs before client is connected.
Remove `cluster.worker.disconnect()` after `assert.fail()`. It is
unreachable code that is unnecessary.
PR-URL: https://github.com/nodejs/node/pull/19700
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
-rw-r--r-- | test/parallel/test-cluster-send-handle-twice.js | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/test/parallel/test-cluster-send-handle-twice.js b/test/parallel/test-cluster-send-handle-twice.js index fc0d4a0308..9eb87d826d 100644 --- a/test/parallel/test-cluster-send-handle-twice.js +++ b/test/parallel/test-cluster-send-handle-twice.js @@ -40,10 +40,10 @@ if (cluster.isMaster) { })); } } else { - const server = net.createServer(function(socket) { + const server = net.createServer(common.mustCall((socket) => { process.send('send-handle-1', socket); process.send('send-handle-2', socket); - }); + })); server.listen(0, function() { const client = net.connect({ @@ -51,10 +51,9 @@ if (cluster.isMaster) { port: server.address().port }); client.on('close', common.mustCall(() => { cluster.worker.disconnect(); })); - setTimeout(function() { client.end(); }, 50); + client.on('connect', () => { client.end(); }); }).on('error', function(e) { console.error(e); assert.fail('server.listen failed'); - cluster.worker.disconnect(); }); } |