Skip to content

Commit 639dc07

Browse files
sam-githubaddaleax
authored andcommitted
test: do not assume tls handshake order
Do not assume that server handshake event happens before client, it is not guaranteed. PR-URL: #25508 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: James M Snell <[email protected]>
1 parent cc6b30f commit 639dc07

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

test/parallel/test-tls-alpn-server-client.js

+10-7
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,10 @@ function runTest(clientsOptions, serverOptions, cb) {
2323
serverOptions.key = loadPEM('agent2-key');
2424
serverOptions.cert = loadPEM('agent2-cert');
2525
const results = [];
26-
let index = 0;
26+
let clientIndex = 0;
27+
let serverIndex = 0;
2728
const server = tls.createServer(serverOptions, function(c) {
28-
results[index].server = { ALPN: c.alpnProtocol };
29+
results[serverIndex++].server = { ALPN: c.alpnProtocol };
2930
});
3031

3132
server.listen(0, serverIP, function() {
@@ -38,16 +39,18 @@ function runTest(clientsOptions, serverOptions, cb) {
3839
opt.host = serverIP;
3940
opt.rejectUnauthorized = false;
4041

41-
results[index] = {};
42+
results[clientIndex] = {};
4243
const client = tls.connect(opt, function() {
43-
results[index].client = { ALPN: client.alpnProtocol };
44-
client.destroy();
44+
results[clientIndex].client = { ALPN: client.alpnProtocol };
45+
client.end();
4546
if (options.length) {
46-
index++;
47+
clientIndex++;
4748
connectClient(options);
4849
} else {
4950
server.close();
50-
cb(results);
51+
server.on('close', () => {
52+
cb(results);
53+
});
5154
}
5255
});
5356
}

0 commit comments

Comments
 (0)