diff --git a/test/parallel/test-http2-create-client-secure-session.js b/test/parallel/test-http2-create-client-secure-session.js index 62a79148dcac47..811ef772d5903a 100644 --- a/test/parallel/test-http2-create-client-secure-session.js +++ b/test/parallel/test-http2-create-client-secure-session.js @@ -20,10 +20,7 @@ function loadKey(keyname) { function onStream(stream, headers) { const socket = stream.session[kSocket]; assert(headers[':authority'].startsWith(socket.servername)); - stream.respond({ - 'content-type': 'text/html', - ':status': 200 - }); + stream.respond({ 'content-type': 'application/json' }); stream.end(JSON.stringify({ servername: socket.servername, alpnProtocol: socket.alpnProtocol @@ -33,35 +30,32 @@ function onStream(stream, headers) { function verifySecureSession(key, cert, ca, opts) { const server = h2.createSecureServer({ cert, key }); server.on('stream', common.mustCall(onStream)); - server.listen(0); - server.on('listening', common.mustCall(function() { - const headers = { ':path': '/' }; - if (!opts) { - opts = {}; - } + server.listen(0, common.mustCall(() => { + opts = opts || { }; opts.secureContext = tls.createSecureContext({ ca }); - const client = h2.connect(`https://localhost:${this.address().port}`, opts, function() { - const req = client.request(headers); + const client = h2.connect(`https://localhost:${server.address().port}`, + opts); + // Verify that a 'secureConnect' listener is attached + assert.strictEqual(client.socket.listenerCount('secureConnect'), 1); + const req = client.request(); - req.on('response', common.mustCall(function(headers) { - assert.strictEqual(headers[':status'], 200, 'status code is set'); - assert.strictEqual(headers['content-type'], 'text/html', - 'content type is set'); - assert(headers['date'], 'there is a date'); - })); + req.on('response', common.mustCall((headers) => { + assert.strictEqual(headers[':status'], 200); + assert.strictEqual(headers['content-type'], 'application/json'); + assert(headers['date']); + })); - let data = ''; - req.setEncoding('utf8'); - req.on('data', (d) => data += d); - req.on('end', common.mustCall(() => { - const jsonData = JSON.parse(data); - assert.strictEqual(jsonData.servername, opts.servername || 'localhost'); - assert.strictEqual(jsonData.alpnProtocol, 'h2'); - server.close(); - client[kSocket].destroy(); - })); - req.end(); - }); + let data = ''; + req.setEncoding('utf8'); + req.on('data', (d) => data += d); + req.on('end', common.mustCall(() => { + const jsonData = JSON.parse(data); + assert.strictEqual(jsonData.servername, + opts.servername || 'localhost'); + assert.strictEqual(jsonData.alpnProtocol, 'h2'); + server.close(); + client[kSocket].destroy(); + })); })); }