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>
This commit is contained in:
Brian White 2016-05-29 03:06:56 -04:00
parent 624734e640
commit 2bc7841d0f
No known key found for this signature in database
GPG key ID: 606D7358F94DA209
358 changed files with 1555 additions and 1517 deletions

View file

@ -1,5 +1,5 @@
'use strict';
var common = require('../common');
require('../common');
var assert = require('assert');
var http = require('http');
@ -16,7 +16,9 @@ var server = http.createServer(function(req, res) {
res.end(req.url);
});
server.listen(common.PORT);
server.listen(0, function() {
makeRequest(expectRequests);
});
var agent = http.Agent({ keepAlive: true });
@ -26,7 +28,6 @@ var expectRequests = 10;
var actualRequests = 0;
makeRequest(expectRequests);
function makeRequest(n) {
if (n === 0) {
server.close();
@ -35,7 +36,7 @@ function makeRequest(n) {
}
var req = http.request({
port: common.PORT,
port: server.address().port,
path: '/' + n,
agent: agent
});