From 06c660b1c694ecb9b7112e29cd684abe6a145557 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tobias=20Nie=C3=9Fen?= Date: Sun, 5 Mar 2023 11:45:01 +0100 Subject: [PATCH] test: simplify test-tls-ecdh-auto Avoid the process 'exit' event handler and use execFile instead of manual stream operations. Refs: https://github.com/nodejs/node/pull/46751 PR-URL: https://github.com/nodejs/node/pull/46911 Reviewed-By: Luigi Pinca Reviewed-By: Filip Skokan --- test/parallel/test-tls-ecdh-auto.js | 34 +++++++---------------------- 1 file changed, 8 insertions(+), 26 deletions(-) diff --git a/test/parallel/test-tls-ecdh-auto.js b/test/parallel/test-tls-ecdh-auto.js index 1ca5c22335c850..11c588d8ac8ce1 100644 --- a/test/parallel/test-tls-ecdh-auto.js +++ b/test/parallel/test-tls-ecdh-auto.js @@ -12,7 +12,7 @@ if (!common.opensslCli) const assert = require('assert'); const tls = require('tls'); -const spawn = require('child_process').spawn; +const { execFile } = require('child_process'); const fixtures = require('../common/fixtures'); function loadPEM(n) { @@ -29,33 +29,15 @@ const options = { const reply = 'I AM THE WALRUS'; // Something recognizable -const server = tls.createServer(options, function(conn) { +const server = tls.createServer(options, (conn) => { conn.end(reply); -}); - -let gotReply = false; - -server.listen(0, function() { +}).listen(0, common.mustCall(() => { const args = ['s_client', '-cipher', `${options.ciphers}`, - '-connect', `127.0.0.1:${this.address().port}`]; - - const client = spawn(common.opensslCli, args); + '-connect', `127.0.0.1:${server.address().port}`]; - client.stdout.on('data', function(data) { - const message = data.toString(); - if (message.includes(reply)) - gotReply = true; - }); - - client.on('exit', function(code) { - assert.strictEqual(code, 0); + execFile(common.opensslCli, args, common.mustSucceed((stdout) => { + assert(stdout.includes(reply)); server.close(); - }); - - client.on('error', assert.ifError); -}); - -process.on('exit', function() { - assert.ok(gotReply); -}); + })); +}));