node/test/parallel/test-http-bind-twice.js
Brian White 2bc7841d0f
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>
2016-06-10 22:30:55 -04:00

27 lines
542 B
JavaScript

'use strict';
require('../common');
var assert = require('assert');
var http = require('http');
var gotError = false;
process.on('exit', function() {
assert(gotError);
});
function dontCall() {
assert(false);
}
var server1 = http.createServer(dontCall);
server1.listen(0, '127.0.0.1', function() {
var server2 = http.createServer(dontCall);
server2.listen(this.address().port, '127.0.0.1', dontCall);
server2.on('error', function(e) {
assert.equal(e.code, 'EADDRINUSE');
server1.close();
gotError = true;
});
});