|
1 | 1 | 'use strict';
|
2 |
| -// This tests binds to one port, then attempts to start a server on that |
| 2 | +// This test binds to one port, then attempts to start a server on that |
3 | 3 | // port. It should be EADDRINUSE but be able to then bind to another port.
|
4 |
| -require('../common'); |
5 |
| -var assert = require('assert'); |
6 |
| -var net = require('net'); |
| 4 | +const common = require('../common'); |
| 5 | +const assert = require('assert'); |
| 6 | +const net = require('net'); |
7 | 7 |
|
8 |
| -var server1listening = false; |
9 |
| -var server2listening = false; |
10 |
| -var server2eaddrinuse = false; |
| 8 | +const server1 = net.Server(); |
11 | 9 |
|
12 |
| -var server1 = net.Server(function(socket) { |
13 |
| - socket.destroy(); |
14 |
| -}); |
| 10 | +const server2 = net.Server(); |
15 | 11 |
|
16 |
| -var server2 = net.Server(function(socket) { |
17 |
| - socket.destroy(); |
18 |
| -}); |
19 |
| - |
20 |
| -var server2errors = 0; |
21 |
| -server2.on('error', function(e) { |
22 |
| - server2errors++; |
23 |
| - console.error('server2 error'); |
24 |
| - |
25 |
| - if (e.code == 'EADDRINUSE') { |
26 |
| - server2eaddrinuse = true; |
27 |
| - } |
28 |
| - |
29 |
| - server2.listen(0, function() { |
30 |
| - console.error('server2 listening'); |
31 |
| - server2listening = true; |
| 12 | +server2.on('error', common.mustCall(function(e) { |
| 13 | + assert.strictEqual(e.code, 'EADDRINUSE'); |
32 | 14 |
|
| 15 | + server2.listen(0, common.mustCall(function() { |
33 | 16 | server1.close();
|
34 | 17 | server2.close();
|
35 |
| - }); |
36 |
| -}); |
| 18 | + })); |
| 19 | +})); |
37 | 20 |
|
38 |
| - |
39 |
| -server1.listen(0, function() { |
40 |
| - console.error('server1 listening'); |
41 |
| - server1listening = true; |
| 21 | +server1.listen(0, common.mustCall(function() { |
42 | 22 | // This should make server2 emit EADDRINUSE
|
43 | 23 | server2.listen(this.address().port);
|
44 |
| -}); |
45 |
| - |
46 |
| - |
47 |
| -process.on('exit', function() { |
48 |
| - assert.equal(1, server2errors); |
49 |
| - assert.ok(server2eaddrinuse); |
50 |
| - assert.ok(server2listening); |
51 |
| - assert.ok(server1listening); |
52 |
| -}); |
| 24 | +})); |
0 commit comments