11cb0ef41Sopenharmony_ci'use strict'; 21cb0ef41Sopenharmony_ci 31cb0ef41Sopenharmony_ciconst common = require('../common'); 41cb0ef41Sopenharmony_ciconst fixtures = require('../common/fixtures'); 51cb0ef41Sopenharmony_ciconst assert = require('assert'); 61cb0ef41Sopenharmony_ciconst { exec } = require('child_process'); 71cb0ef41Sopenharmony_ci 81cb0ef41Sopenharmony_ciconst nodeBinary = process.argv[0]; 91cb0ef41Sopenharmony_ci 101cb0ef41Sopenharmony_ciif (!common.isMainThread) 111cb0ef41Sopenharmony_ci common.skip('process.chdir is not available in Workers'); 121cb0ef41Sopenharmony_ci 131cb0ef41Sopenharmony_ciconst selfRefModule = fixtures.path('self_ref_module'); 141cb0ef41Sopenharmony_ciconst fixtureA = fixtures.path('printA.js'); 151cb0ef41Sopenharmony_ci 161cb0ef41Sopenharmony_ciexec(`"${nodeBinary}" -r self_ref "${fixtureA}"`, { cwd: selfRefModule }, 171cb0ef41Sopenharmony_ci (err, stdout, stderr) => { 181cb0ef41Sopenharmony_ci assert.ifError(err); 191cb0ef41Sopenharmony_ci assert.strictEqual(stdout, 'A\n'); 201cb0ef41Sopenharmony_ci }); 21