From 5b30c4f24da8039bcfbd9d453b74fdd986cb000e Mon Sep 17 00:00:00 2001 From: cjihrig Date: Mon, 16 Jan 2017 13:17:34 -0500 Subject: [PATCH] test: refactor test-child-process-spawnsync-maxbuf This commit refactors test-child-process-spawnsync-maxbuf.js, and adds testing for the case where maxBuffer is Infinity. PR-URL: https://github.com/nodejs/node/pull/10769 Reviewed-By: James M Snell --- .../test-child-process-spawnsync-maxbuf.js | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/test/parallel/test-child-process-spawnsync-maxbuf.js b/test/parallel/test-child-process-spawnsync-maxbuf.js index 87099737ecb5b0..d9c2c4d23e17fd 100644 --- a/test/parallel/test-child-process-spawnsync-maxbuf.js +++ b/test/parallel/test-child-process-spawnsync-maxbuf.js @@ -1,9 +1,7 @@ 'use strict'; require('../common'); const assert = require('assert'); - const spawnSync = require('child_process').spawnSync; - const msgOut = 'this is stdout'; // This is actually not os.EOL? @@ -14,14 +12,21 @@ const args = [ `console.log("${msgOut}");` ]; -const options = { - maxBuffer: 1 -}; +// Verify that an error is returned if maxBuffer is surpassed. +{ + const ret = spawnSync(process.execPath, args, { maxBuffer: 1 }); + + assert.ok(ret.error, 'maxBuffer should error'); + assert.strictEqual(ret.error.errno, 'ENOBUFS'); + // We can have buffers larger than maxBuffer because underneath we alloc 64k + // that matches our read sizes. + assert.deepStrictEqual(ret.stdout, msgOutBuf); +} -const ret = spawnSync(process.execPath, args, options); +// Verify that a maxBuffer size of Infinity works. +{ + const ret = spawnSync(process.execPath, args, { maxBuffer: Infinity }); -assert.ok(ret.error, 'maxBuffer should error'); -assert.strictEqual(ret.error.errno, 'ENOBUFS'); -// We can have buffers larger than maxBuffer because underneath we alloc 64k -// that matches our read sizes -assert.deepStrictEqual(ret.stdout, msgOutBuf); + assert.ifError(ret.error); + assert.deepStrictEqual(ret.stdout, msgOutBuf); +}