xref: /third_party/node/test/parallel/test-repl-require-self-referential.js
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/node/test/parallel/
11cb0ef41Sopenharmony_ci'use strict';
21cb0ef41Sopenharmony_ci
31cb0ef41Sopenharmony_ciconst common = require('../common');
41cb0ef41Sopenharmony_ciconst fixtures = require('../common/fixtures');
51cb0ef41Sopenharmony_ciconst assert = require('assert');
61cb0ef41Sopenharmony_ciconst { spawn } = require('child_process');
71cb0ef41Sopenharmony_ci
81cb0ef41Sopenharmony_ciif (!common.isMainThread)
91cb0ef41Sopenharmony_ci  common.skip('process.chdir is not available in Workers');
101cb0ef41Sopenharmony_ci
111cb0ef41Sopenharmony_ciconst selfRefModule = fixtures.path('self_ref_module');
121cb0ef41Sopenharmony_ciconst child = spawn(process.execPath,
131cb0ef41Sopenharmony_ci                    ['--interactive'],
141cb0ef41Sopenharmony_ci                    { cwd: selfRefModule }
151cb0ef41Sopenharmony_ci);
161cb0ef41Sopenharmony_cilet output = '';
171cb0ef41Sopenharmony_cichild.stdout.on('data', (chunk) => output += chunk);
181cb0ef41Sopenharmony_cichild.on('exit', common.mustCall(() => {
191cb0ef41Sopenharmony_ci  const results = output.replace(/^> /mg, '').split('\n').slice(2);
201cb0ef41Sopenharmony_ci  assert.deepStrictEqual(results, [ "'Self resolution working'", '' ]);
211cb0ef41Sopenharmony_ci}));
221cb0ef41Sopenharmony_ci
231cb0ef41Sopenharmony_cichild.stdin.write('require("self_ref");\n');
241cb0ef41Sopenharmony_cichild.stdin.write('.exit');
251cb0ef41Sopenharmony_cichild.stdin.end();
26

Indexes created Thu Nov 07 10:32:03 CST 2024