From f1fc805461e2e6ae03909daa65bebb56cbf5473d Mon Sep 17 00:00:00 2001 From: Mert Can Altin Date: Wed, 27 Nov 2024 21:53:00 +0300 Subject: [PATCH 1/3] test: migrate tests to use node:test module for better test structure --- test/report/test-report-worker.js | 91 +++++++++++++++---------------- 1 file changed, 45 insertions(+), 46 deletions(-) diff --git a/test/report/test-report-worker.js b/test/report/test-report-worker.js index 26b28219c84088..a24afe589cb5e1 100644 --- a/test/report/test-report-worker.js +++ b/test/report/test-report-worker.js @@ -1,49 +1,48 @@ 'use strict'; -const common = require('../common'); -const assert = require('assert'); -const { Worker } = require('worker_threads'); -const { once } = require('events'); -const helper = require('../common/report'); - -async function basic() { - // Test that the report includes basic information about Worker threads. - - const w = new Worker(` - const { parentPort } = require('worker_threads'); - parentPort.once('message', () => { - /* Wait for message to stop the Worker */ - }); - `, { eval: true }); - - await once(w, 'online'); - - const report = process.report.getReport(); - helper.validateContent(report); - assert.strictEqual(report.workers.length, 1); - helper.validateContent(report.workers[0]); - assert.strictEqual(report.workers[0].header.threadId, w.threadId); - - w.postMessage({}); - await once(w, 'exit'); -} +require('../common'); -async function interruptingJS() { - // Test that the report also works when Worker threads are busy in JS land. - - const w = new Worker('while (true);', { eval: true }); - - await once(w, 'online'); - - const report = process.report.getReport(); - helper.validateContent(report); - assert.strictEqual(report.workers.length, 1); - helper.validateContent(report.workers[0]); - - await w.terminate(); -} - -(async function() { - await basic(); - await interruptingJS(); -})().then(common.mustCall()); +const helper = require('../common/report'); +const assert = require('node:assert'); +const { test } = require('node:test'); +const { Worker } = require('node:worker_threads'); +const { once } = require('node:events'); + +test('Worker threads report basic information', async (t) => { + await t.test('should include basic information about Worker threads', async () => { + const w = new Worker(` + const { parentPort } = require('worker_threads'); + parentPort.once('message', () => { + /* Wait for message to stop the Worker */ + }); + `, { eval: true }); + + await once(w, 'online'); + + const report = process.report.getReport(); + helper.validateContent(report); + const workerLengthMessage = 'Report should include one Worker'; + const threadIdMessage = 'Thread ID should match the Worker thread ID'; + assert.strictEqual(report.workers.length, 1, workerLengthMessage); + helper.validateContent(report.workers[0]); + assert.strictEqual(report.workers[0].header.threadId, w.threadId, threadIdMessage); + + w.postMessage({}); + + await once(w, 'exit'); + }); + + await t.test('should generate report when Workers are busy in JS land', async () => { + const w = new Worker('while (true);', { eval: true }); + + await once(w, 'online'); + + const report = process.report.getReport(); + helper.validateContent(report); + const workerLengthMessage = 'Report should include one Worker'; + assert.strictEqual(report.workers.length, 1, workerLengthMessage); + helper.validateContent(report.workers[0]); + + await w.terminate(); + }); +}); From 390f57faa1ab9f621b0afa8cdd77529bef29e09e Mon Sep 17 00:00:00 2001 From: mert Date: Fri, 6 Dec 2024 16:33:48 +0300 Subject: [PATCH 2/3] Refactor tests to use describe and it for better structure --- test/report/test-report-worker.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/test/report/test-report-worker.js b/test/report/test-report-worker.js index a24afe589cb5e1..2f104a870f8c34 100644 --- a/test/report/test-report-worker.js +++ b/test/report/test-report-worker.js @@ -4,12 +4,12 @@ require('../common'); const helper = require('../common/report'); const assert = require('node:assert'); -const { test } = require('node:test'); +const { describe, it } = require('node:test'); const { Worker } = require('node:worker_threads'); const { once } = require('node:events'); -test('Worker threads report basic information', async (t) => { - await t.test('should include basic information about Worker threads', async () => { +describe('Worker threads', () => { + it('should include basic information about Worker threads', async () => { const w = new Worker(` const { parentPort } = require('worker_threads'); parentPort.once('message', () => { @@ -23,16 +23,19 @@ test('Worker threads report basic information', async (t) => { helper.validateContent(report); const workerLengthMessage = 'Report should include one Worker'; const threadIdMessage = 'Thread ID should match the Worker thread ID'; + assert.strictEqual(report.workers.length, 1, workerLengthMessage); helper.validateContent(report.workers[0]); assert.strictEqual(report.workers[0].header.threadId, w.threadId, threadIdMessage); + w.postMessage({}); + await once(w, 'exit'); }); - await t.test('should generate report when Workers are busy in JS land', async () => { + it('should generate report when Workers are busy in JS land', async () => { const w = new Worker('while (true);', { eval: true }); await once(w, 'online'); @@ -40,6 +43,7 @@ test('Worker threads report basic information', async (t) => { const report = process.report.getReport(); helper.validateContent(report); const workerLengthMessage = 'Report should include one Worker'; + assert.strictEqual(report.workers.length, 1, workerLengthMessage); helper.validateContent(report.workers[0]); From d6346656ac3f300280ace4dd48441911da339e61 Mon Sep 17 00:00:00 2001 From: mert Date: Fri, 6 Dec 2024 16:35:15 +0300 Subject: [PATCH 3/3] lint --- test/report/test-report-worker.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/report/test-report-worker.js b/test/report/test-report-worker.js index 2f104a870f8c34..f691a0e545bbcd 100644 --- a/test/report/test-report-worker.js +++ b/test/report/test-report-worker.js @@ -43,7 +43,7 @@ describe('Worker threads', () => { const report = process.report.getReport(); helper.validateContent(report); const workerLengthMessage = 'Report should include one Worker'; - + assert.strictEqual(report.workers.length, 1, workerLengthMessage); helper.validateContent(report.workers[0]);