diff --git a/test/parallel/test-handle-wrap-isrefed.js b/test/parallel/test-handle-wrap-isrefed.js index b5dbeb23bfd63a..007e27c6cd0e11 100644 --- a/test/parallel/test-handle-wrap-isrefed.js +++ b/test/parallel/test-handle-wrap-isrefed.js @@ -99,3 +99,6 @@ function makeAssert(message) { timer._handle.close( common.mustCall(() => assert(timer._handle.hasRef(), false))); } + + +// see also test/pseudo-tty/test-handle-wrap-isrefed-tty.js diff --git a/test/pseudo-tty/test-handle-wrap-isrefed-tty.js b/test/pseudo-tty/test-handle-wrap-isrefed-tty.js index ad312be1f77862..815e71cc7443a7 100644 --- a/test/pseudo-tty/test-handle-wrap-isrefed-tty.js +++ b/test/pseudo-tty/test-handle-wrap-isrefed-tty.js @@ -1,33 +1,27 @@ 'use strict'; +// see also test/parallel/test-handle-wrap-isrefed.js + const common = require('../common'); const strictEqual = require('assert').strictEqual; -const spawn = require('child_process').spawn; function makeAssert(message) { return function(actual, expected) { strictEqual(actual, expected, message); }; } -const assert = makeAssert('hasRef() not working on tty_wrap'); -if (process.argv[2] === 'child') { - // Test tty_wrap in piped child to guarentee stdin being a TTY. - const ReadStream = require('tty').ReadStream; - const tty = new ReadStream(0); - assert(Object.getPrototypeOf(tty._handle).hasOwnProperty('hasRef'), true); - assert(tty._handle.hasRef(), true); - tty.unref(); - assert(tty._handle.hasRef(), false); - tty._handle.close( - common.mustCall(() => assert(tty._handle.hasRef(), false))); - return; -} +const assert = makeAssert('hasRef() not working on tty_wrap'); -// Use spawn so that we can be sure that stdin has a _handle property. -// Refs: https://github.com/nodejs/node/pull/5916 -const proc = spawn(process.execPath, [__filename, 'child'], { stdio: 'pipe' }); -proc.stderr.pipe(process.stderr); -proc.on('exit', common.mustCall(function(exitCode) { - process.exitCode = exitCode; -})); +const ReadStream = require('tty').ReadStream; +const tty = new ReadStream(0); +const isTTY = process.binding('tty_wrap').isTTY; +assert(isTTY(0), true); +assert(Object.getPrototypeOf(tty._handle).hasOwnProperty('hasRef'), true); +assert(tty._handle.hasRef(), true); +tty.unref(); +assert(tty._handle.hasRef(), false); +tty.ref(); +assert(tty._handle.hasRef(), true); +tty._handle.close( + common.mustCall(() => assert(tty._handle.hasRef(), false))); diff --git a/test/pseudo-tty/test-handle-wrap-isrefed-tty.out b/test/pseudo-tty/test-handle-wrap-isrefed-tty.out new file mode 100644 index 00000000000000..e69de29bb2d1d6