Skip to content

Commit c209968

Browse files
Trottandrewdeandrade
authored andcommitted
test: check error type from net.Server.listen()
This change eliminates an unnecessary setTimeout() in the test. PR-URL: nodejs/node#1821 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Brendan Ashworth <[email protected]>
1 parent 3381bb2 commit c209968

File tree

1 file changed

+15
-15
lines changed

1 file changed

+15
-15
lines changed

test/parallel/test-net-server-try-ports.js

+15-15
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ var connections = 0;
99

1010
var server1listening = false;
1111
var server2listening = false;
12+
var server2eaddrinuse = false;
1213

1314
var server1 = net.Server(function(socket) {
1415
connections++;
@@ -21,9 +22,21 @@ var server2 = net.Server(function(socket) {
2122
});
2223

2324
var server2errors = 0;
24-
server2.on('error', function() {
25+
server2.on('error', function(e) {
2526
server2errors++;
2627
console.error('server2 error');
28+
29+
if (e.code == 'EADDRINUSE') {
30+
server2eaddrinuse = true;
31+
}
32+
33+
server2.listen(common.PORT + 1, function() {
34+
console.error('server2 listening');
35+
server2listening = true;
36+
37+
server1.close();
38+
server2.close();
39+
});
2740
});
2841

2942

@@ -32,25 +45,12 @@ server1.listen(common.PORT, function() {
3245
server1listening = true;
3346
// This should make server2 emit EADDRINUSE
3447
server2.listen(common.PORT);
35-
36-
// Wait a bit, now try again.
37-
// TODO, the listen callback should report if there was an error.
38-
// Then we could avoid this very unlikely but potential race condition
39-
// here.
40-
setTimeout(function() {
41-
server2.listen(common.PORT + 1, function() {
42-
console.error('server2 listening');
43-
server2listening = true;
44-
45-
server1.close();
46-
server2.close();
47-
});
48-
}, 100);
4948
});
5049

5150

5251
process.on('exit', function() {
5352
assert.equal(1, server2errors);
53+
assert.ok(server2eaddrinuse);
5454
assert.ok(server2listening);
5555
assert.ok(server1listening);
5656
});

0 commit comments

Comments
 (0)