Skip to content
This repository has been archived by the owner on Aug 11, 2020. It is now read-only.

[WIP] quic: fixup up client-connect-multiple-sequential #321

Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 13 additions & 7 deletions test/parallel/test-quic-client-connect-multiple-sequential.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,22 +38,28 @@ const { once } = require('events');

const client = quic.createSocket({ client: { key, cert, ca, alpn: 'meow' } });

const reqs = [];
for (const server of servers) {
const req = client.connect({
address: 'localhost',
port: server.endpoints[0].address.port
});

const [ stream ] = await once(req, 'stream');
stream.resume();
await once(stream, 'end');

server.close();
req.close();
await once(req, 'close');
req.on('stream', common.mustCall((stream) => {
stream.resume();
stream.on('close', common.mustCall(() => {
req.close();
}));
}));
reqs.push(once(req, 'close'));
Copy link
Member Author

@jasnell jasnell Feb 4, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we change this line to await once(req, 'close'); the test will hang. (and remove the await Promise.all(reqs); line below

}
await Promise.all(reqs);

client.close();

await once(client, 'close');
for (const server of servers)
server.close();

await Promise.all(servers.map((server) => once(server, 'close')));
})().then(common.mustCall());