diff options
author | Brian White <mscdex@mscdex.net> | 2016-05-29 03:06:56 -0400 |
---|---|---|
committer | Brian White <mscdex@mscdex.net> | 2016-06-10 22:30:55 -0400 |
commit | 2bc7841d0fcdd066fe477873229125b6f003b693 (patch) | |
tree | 2816555ef6ad2fc828a75dc3c564f8faa2dee6c7 /test/parallel/test-listen-fd-cluster.js | |
parent | 624734e640717a826ab1a18845c083a638dc5ce6 (diff) | |
download | android-node-v8-2bc7841d0fcdd066fe477873229125b6f003b693.tar.gz android-node-v8-2bc7841d0fcdd066fe477873229125b6f003b693.tar.bz2 android-node-v8-2bc7841d0fcdd066fe477873229125b6f003b693.zip |
test: use random ports where possible
This helps to prevent issues where a failed test can keep a bound
socket open long enough to cause other tests to fail with EADDRINUSE
because the same port number is used.
PR-URL: https://github.com/nodejs/node/pull/7045
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
Diffstat (limited to 'test/parallel/test-listen-fd-cluster.js')
-rw-r--r-- | test/parallel/test-listen-fd-cluster.js | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/test/parallel/test-listen-fd-cluster.js b/test/parallel/test-listen-fd-cluster.js index 92aadfd49f..606109030b 100644 --- a/test/parallel/test-listen-fd-cluster.js +++ b/test/parallel/test-listen-fd-cluster.js @@ -3,7 +3,6 @@ var common = require('../common'); var assert = require('assert'); var http = require('http'); var net = require('net'); -var PORT = common.PORT; var cluster = require('cluster'); console.error('Cluster listen fd test', process.argv[2] || 'runner'); @@ -35,11 +34,11 @@ process.on('exit', function() { // server handles to stdio fd's is NOT a good or reliable way to do // concurrency in HTTP servers! Use the cluster module, or if you want // a more low-level approach, use child process IPC manually. -test(function(parent) { +test(function(parent, port) { // now make sure that we can request to the worker, then kill it. http.get({ server: 'localhost', - port: PORT, + port: port, path: '/', }).on('response', function(res) { var s = ''; @@ -65,8 +64,9 @@ function test(cb) { var server = net.createServer(function(conn) { console.error('connection on parent'); conn.end('hello from parent\n'); - }).listen(PORT, function() { - console.error('server listening on %d', PORT); + }).listen(0, function() { + const port = this.address().port; + console.error('server listening on %d', port); var spawn = require('child_process').spawn; var master = spawn(process.execPath, [__filename, 'master'], { @@ -89,7 +89,7 @@ function test(cb) { console.error('master spawned'); master.on('message', function(msg) { if (msg === 'started worker') { - cb(master); + cb(master, port); } }); }); |