test: fix flaky test-child-process-pass-fd
Listen on random ports instead of using `common.PORT`. Fixes: https://github.com/nodejs/node/issues/8209 PR-URL: https://github.com/nodejs/node/pull/8212 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Yorkie Liu <yorkiefixer@gmail.com>
This commit is contained in:
parent
3242b27b54
commit
64cbe7aa9e
@ -14,7 +14,7 @@ const N = 80;
|
|||||||
|
|
||||||
if (process.argv[2] !== 'child') {
|
if (process.argv[2] !== 'child') {
|
||||||
for (let i = 0; i < N; ++i) {
|
for (let i = 0; i < N; ++i) {
|
||||||
const worker = fork(__filename, ['child', common.PORT + i]);
|
const worker = fork(__filename, ['child']);
|
||||||
worker.once('message', common.mustCall((msg, handle) => {
|
worker.once('message', common.mustCall((msg, handle) => {
|
||||||
assert.strictEqual(msg, 'handle');
|
assert.strictEqual(msg, 'handle');
|
||||||
assert.ok(handle);
|
assert.ok(handle);
|
||||||
@ -33,7 +33,6 @@ if (process.argv[2] !== 'child') {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
let socket;
|
let socket;
|
||||||
const port = process.argv[3];
|
|
||||||
let cbcalls = 0;
|
let cbcalls = 0;
|
||||||
function socketConnected() {
|
function socketConnected() {
|
||||||
if (++cbcalls === 2)
|
if (++cbcalls === 2)
|
||||||
@ -47,7 +46,8 @@ if (process.argv[2] !== 'child') {
|
|||||||
});
|
});
|
||||||
socketConnected();
|
socketConnected();
|
||||||
});
|
});
|
||||||
server.listen(port, common.localhostIPv4, () => {
|
server.listen(0, common.localhostIPv4, () => {
|
||||||
|
const port = server.address().port;
|
||||||
socket = net.connect(port, common.localhostIPv4, socketConnected);
|
socket = net.connect(port, common.localhostIPv4, socketConnected);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user