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,12 +1,9 @@
'use strict';
var common = require('../common');
require('../common');
var assert = require('assert');
var http = require('http');
var url = require('url');
// username = "user", password = "pass:"
var testURL = url.parse('http://user:pass%3A@localhost:' + common.PORT);
function check(request) {
// the correct authorization header is be passed
assert.strictEqual(request.headers.authorization, 'Basic dXNlcjpwYXNzOg==');
@ -20,7 +17,11 @@ var server = http.createServer(function(request, response) {
server.close();
});
server.listen(common.PORT, function() {
server.listen(0, function() {
const port = this.address().port;
// username = "user", password = "pass:"
var testURL = url.parse(`http://user:pass%3A@localhost:${port}`);
// make the request
http.request(testURL).end();
});