'use strict'; // This tests that piping stdin will cause it to resume() as well. require('../common'); const assert = require('assert'); if (process.argv[2] === 'child') { process.stdin.pipe(process.stdout); } else { const spawn = require('child_process').spawn; const buffers = []; const child = spawn(process.execPath, [__filename, 'child']); child.stdout.on('data', function(c) { buffers.push(c); }); child.stdout.on('close', function() { const b = Buffer.concat(buffers).toString(); assert.strictEqual(b, 'Hello, world\n'); console.log('ok'); }); child.stdin.write('Hel'); child.stdin.write('lo,'); child.stdin.write(' wo'); setTimeout(function() { child.stdin.write('rld\n'); child.stdin.end(); }, 10); }