From a184544cf1ace31629641a9e59056ca8ddbb4341 Mon Sep 17 00:00:00 2001 From: Santiago Gimeno Date: Mon, 17 Jun 2024 20:30:14 +0200 Subject: [PATCH] test: fix flaky test-otlp-metrics.mjs Avoid calling `child.send('exit')` multiple times as it might trigger an `EPIPE` error. PR-URL: https://github.com/nodesource/nsolid/pull/143 Reviewed-by: Trevor Norris --- test/agents/test-otlp-metrics.mjs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/agents/test-otlp-metrics.mjs b/test/agents/test-otlp-metrics.mjs index c93b50f419..17a48a72ac 100644 --- a/test/agents/test-otlp-metrics.mjs +++ b/test/agents/test-otlp-metrics.mjs @@ -549,12 +549,14 @@ if (process.argv[2] === 'child') { async function runTest(getEnv) { return new Promise((resolve, reject) => { + let exitCalled = false; const otlpServer = new OTLPServer(); otlpServer.start(mustSucceed(async (port) => { otlpServer.on('metrics', mustCallAtLeast((metrics) => { checkMetrics(metrics, context); - if (context.state === State.ThreadMetrics) { + if (context.state === State.ThreadMetrics && !exitCalled) { child.send('exit'); + exitCalled = true; } }, 1));