11cb0ef41Sopenharmony_ci'use strict'; 21cb0ef41Sopenharmony_ciconst common = require('../common'); 31cb0ef41Sopenharmony_ciconst path = require('path'); 41cb0ef41Sopenharmony_ciconst assert = require('assert'); 51cb0ef41Sopenharmony_ciconst { Worker, isMainThread, parentPort } = require('worker_threads'); 61cb0ef41Sopenharmony_ci 71cb0ef41Sopenharmony_ciif (isMainThread) { 81cb0ef41Sopenharmony_ci const cwdName = path.relative('../', '.'); 91cb0ef41Sopenharmony_ci const relativePath = path.relative('.', __filename); 101cb0ef41Sopenharmony_ci const w = new Worker(path.join('..', cwdName, relativePath)); 111cb0ef41Sopenharmony_ci w.on('message', common.mustCall((message) => { 121cb0ef41Sopenharmony_ci assert.strictEqual(message, 'Hello, world!'); 131cb0ef41Sopenharmony_ci })); 141cb0ef41Sopenharmony_ci} else { 151cb0ef41Sopenharmony_ci parentPort.postMessage('Hello, world!'); 161cb0ef41Sopenharmony_ci} 17