node/test/parallel/test-child-process-fork-options.js
Shobhit Chittora 22b41495ea child_process: handle undefined/null for fork() args
PR-URL: https://github.com/nodejs/node/pull/22416
Fixes: https://github.com/nodejs/node/issues/20749
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
Reviewed-By: Matheus Marchini <mat@mmarchini.me>
2018-11-28 11:26:49 +11:00

38 lines
1000 B
JavaScript

'use strict';
const common = require('../common');
const fixtures = require('../common/fixtures');
// This test ensures that fork should parse options
// correctly if args is undefined or null
const assert = require('assert');
const { fork } = require('child_process');
const expectedEnv = { foo: 'bar' };
{
const cp = fork(fixtures.path('child-process-echo-options.js'), undefined,
{ env: Object.assign({}, process.env, expectedEnv) });
cp.on('message', common.mustCall(({ env }) => {
assert.strictEqual(env.foo, expectedEnv.foo);
}));
cp.on('exit', common.mustCall((code) => {
assert.strictEqual(code, 0);
}));
}
{
const cp = fork(fixtures.path('child-process-echo-options.js'), null,
{ env: Object.assign({}, process.env, expectedEnv) });
cp.on('message', common.mustCall(({ env }) => {
assert.strictEqual(env.foo, expectedEnv.foo);
}));
cp.on('exit', common.mustCall((code) => {
assert.strictEqual(code, 0);
}));
}