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 <jasnell@gmail.com>
This commit is contained in:
parent
8f3ff98f0e
commit
5b30c4f24d
@ -1,9 +1,7 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
require('../common');
|
require('../common');
|
||||||
const assert = require('assert');
|
const assert = require('assert');
|
||||||
|
|
||||||
const spawnSync = require('child_process').spawnSync;
|
const spawnSync = require('child_process').spawnSync;
|
||||||
|
|
||||||
const msgOut = 'this is stdout';
|
const msgOut = 'this is stdout';
|
||||||
|
|
||||||
// This is actually not os.EOL?
|
// This is actually not os.EOL?
|
||||||
@ -14,14 +12,21 @@ const args = [
|
|||||||
`console.log("${msgOut}");`
|
`console.log("${msgOut}");`
|
||||||
];
|
];
|
||||||
|
|
||||||
const options = {
|
// Verify that an error is returned if maxBuffer is surpassed.
|
||||||
maxBuffer: 1
|
{
|
||||||
};
|
const ret = spawnSync(process.execPath, args, { maxBuffer: 1 });
|
||||||
|
|
||||||
const ret = spawnSync(process.execPath, args, options);
|
|
||||||
|
|
||||||
assert.ok(ret.error, 'maxBuffer should error');
|
assert.ok(ret.error, 'maxBuffer should error');
|
||||||
assert.strictEqual(ret.error.errno, 'ENOBUFS');
|
assert.strictEqual(ret.error.errno, 'ENOBUFS');
|
||||||
// We can have buffers larger than maxBuffer because underneath we alloc 64k
|
// We can have buffers larger than maxBuffer because underneath we alloc 64k
|
||||||
// that matches our read sizes
|
// that matches our read sizes.
|
||||||
assert.deepStrictEqual(ret.stdout, msgOutBuf);
|
assert.deepStrictEqual(ret.stdout, msgOutBuf);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Verify that a maxBuffer size of Infinity works.
|
||||||
|
{
|
||||||
|
const ret = spawnSync(process.execPath, args, { maxBuffer: Infinity });
|
||||||
|
|
||||||
|
assert.ifError(ret.error);
|
||||||
|
assert.deepStrictEqual(ret.stdout, msgOutBuf);
|
||||||
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user