'use strict'; const common = require('../common'); const fixtures = require('../common/fixtures'); const { Worker } = require('worker_threads'); const assert = require('assert'); // Regression test for https://github.com/nodejs/node/issues/31777: // stdio operations coming from preload modules should count towards the // ref count of the internal communication port on the Worker side. for (let i = 0; i < 10; i++) { const w = new Worker('console.log("B");', { execArgv: ['--require', fixtures.path('printA.js')], eval: true, stdout: true }); w.on('exit', common.mustCall(() => { assert.strictEqual(w.stdout.read().toString(), 'A\nB\n'); })); }