mirror of
https://github.com/nodejs/node.git
synced 2025-05-18 11:29:35 +00:00

common.js needs to be loaded in all tests so that there is checking for variable leaks and possibly other things. However, it does not need to be assigned to a variable if nothing in common.js is referred to elsewhere in the test. PR-URL: https://github.com/nodejs/node/pull/4408 Reviewed-By: James M Snell <jasnell@gmail.com>
42 lines
1.2 KiB
JavaScript
42 lines
1.2 KiB
JavaScript
'use strict';
|
|
require('../common');
|
|
var assert = require('assert');
|
|
var cluster = require('cluster');
|
|
|
|
assert(cluster.isMaster);
|
|
|
|
assert.deepEqual(cluster.settings, {},
|
|
'cluster.settings should not be initialized until needed');
|
|
|
|
cluster.setupMaster();
|
|
assert.deepEqual(cluster.settings, {
|
|
args: process.argv.slice(2),
|
|
exec: process.argv[1],
|
|
execArgv: process.execArgv,
|
|
silent: false,
|
|
});
|
|
console.log('ok sets defaults');
|
|
|
|
cluster.setupMaster({ exec: 'overridden' });
|
|
assert.strictEqual(cluster.settings.exec, 'overridden');
|
|
console.log('ok overrids defaults');
|
|
|
|
cluster.setupMaster({ args: ['foo', 'bar'] });
|
|
assert.strictEqual(cluster.settings.exec, 'overridden');
|
|
assert.deepEqual(cluster.settings.args, ['foo', 'bar']);
|
|
|
|
cluster.setupMaster({ execArgv: ['baz', 'bang'] });
|
|
assert.strictEqual(cluster.settings.exec, 'overridden');
|
|
assert.deepEqual(cluster.settings.args, ['foo', 'bar']);
|
|
assert.deepEqual(cluster.settings.execArgv, ['baz', 'bang']);
|
|
console.log('ok preserves unchanged settings on repeated calls');
|
|
|
|
cluster.setupMaster();
|
|
assert.deepEqual(cluster.settings, {
|
|
args: ['foo', 'bar'],
|
|
exec: 'overridden',
|
|
execArgv: ['baz', 'bang'],
|
|
silent: false,
|
|
});
|
|
console.log('ok preserves current settings');
|