• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2
3const common = require('../common');
4
5if (common.isWindows || common.isAIX)
6  common.skip(`No /dev/stdin on ${process.platform}.`);
7
8const assert = require('assert');
9
10const { spawnSync } = require('child_process');
11
12for (const code of [
13  `require('fs').realpath('/dev/stdin', (err, resolvedPath) => {
14    if (err) {
15      process.exit(1);
16    }
17    if (resolvedPath) {
18      process.exit(2);
19    }
20  });`,
21  `try {
22    if (require('fs').realpathSync('/dev/stdin')) {
23      process.exit(2);
24    }
25  } catch {
26    process.exit(1);
27  }`
28]) {
29  assert.strictEqual(spawnSync(process.execPath, ['-e', code], {
30    stdio: 'pipe'
31  }).status, 2);
32}
33