1import '../common/index.mjs'; 2import assert from 'assert'; 3import { fork } from 'child_process'; 4import { once } from 'events'; 5import { fileURLToPath } from 'url'; 6 7if (process.argv[2] !== 'child') { 8 const filename = fileURLToPath(import.meta.url); 9 const cp = fork(filename, ['child']); 10 const message = 'Hello World'; 11 cp.send(message); 12 13 const [received] = await once(cp, 'message'); 14 assert.deepStrictEqual(received, message); 15 16 cp.disconnect(); 17 await once(cp, 'exit'); 18} else { 19 process.on('message', (msg) => process.send(msg)); 20} 21