diff --git a/test/parallel/test-cluster-setup-master.js b/test/parallel/test-cluster-setup-master.js index 3252c5ce07f..619a8439904 100644 --- a/test/parallel/test-cluster-setup-master.js +++ b/test/parallel/test-cluster-setup-master.js @@ -20,7 +20,7 @@ // USE OR OTHER DEALINGS IN THE SOFTWARE. 'use strict'; -require('../common'); +const common = require('../common'); const assert = require('assert'); const cluster = require('cluster'); @@ -38,7 +38,7 @@ if (cluster.isWorker) { }; const totalWorkers = 2; - let onlineWorkers = 0; + let settings; // Setup master cluster.setupMaster({ @@ -49,7 +49,7 @@ if (cluster.isWorker) { cluster.once('setup', function() { checks.setupEvent = true; - const settings = cluster.settings; + settings = cluster.settings; if (settings && settings.args && settings.args[0] === 'custom argument' && settings.silent === true && @@ -58,25 +58,19 @@ if (cluster.isWorker) { } }); - let correctIn = 0; + let correctInput = 0; - cluster.on('online', function lisenter(worker) { - - onlineWorkers++; + cluster.on('online', common.mustCall(function listener(worker) { worker.once('message', function(data) { - correctIn += (data === 'custom argument' ? 1 : 0); - if (correctIn === totalWorkers) { + correctInput += (data === 'custom argument' ? 1 : 0); + if (correctInput === totalWorkers) { checks.args = true; } worker.kill(); }); - // All workers are online - if (onlineWorkers === totalWorkers) { - checks.workers = true; - } - }); + }, totalWorkers)); // Start all workers cluster.fork(); @@ -84,11 +78,16 @@ if (cluster.isWorker) { // Check all values process.once('exit', function() { - assert.ok(checks.workers, 'Not all workers went online'); - assert.ok(checks.args, 'The arguments was noy send to the worker'); + const argsMsg = 'Arguments was not send for one or more worker. ' + + `${correctInput} workers receive argument, ` + + `but ${totalWorkers} were expected.`; + assert.ok(checks.args, argsMsg); + assert.ok(checks.setupEvent, 'The setup event was never emitted'); - const m = 'The settingsObject do not have correct properties'; - assert.ok(checks.settingsObject, m); + + const settingObjectMsg = 'The settingsObject do not have correct ' + + `properties : ${JSON.stringify(settings)}`; + assert.ok(checks.settingsObject, settingObjectMsg); }); }