1
1
'use strict' ;
2
- require ( '../common' ) ;
2
+ const common = require ( '../common' ) ;
3
3
const assert = require ( 'assert' ) ;
4
4
const cluster = require ( 'cluster' ) ;
5
5
@@ -17,7 +17,7 @@ if (cluster.isWorker) {
17
17
} ;
18
18
19
19
const totalWorkers = 2 ;
20
- let onlineWorkers = 0 ;
20
+ let settings ;
21
21
22
22
// Setup master
23
23
cluster . setupMaster ( {
@@ -28,7 +28,7 @@ if (cluster.isWorker) {
28
28
cluster . once ( 'setup' , function ( ) {
29
29
checks . setupEvent = true ;
30
30
31
- const settings = cluster . settings ;
31
+ settings = cluster . settings ;
32
32
if ( settings &&
33
33
settings . args && settings . args [ 0 ] === 'custom argument' &&
34
34
settings . silent === true &&
@@ -37,37 +37,36 @@ if (cluster.isWorker) {
37
37
}
38
38
} ) ;
39
39
40
- let correctIn = 0 ;
40
+ let correctInput = 0 ;
41
41
42
- cluster . on ( 'online' , function lisenter ( worker ) {
43
-
44
- onlineWorkers ++ ;
42
+ cluster . on ( 'online' , common . mustCall ( function listener ( worker ) {
45
43
46
44
worker . once ( 'message' , function ( data ) {
47
- correctIn += ( data === 'custom argument' ? 1 : 0 ) ;
48
- if ( correctIn === totalWorkers ) {
45
+ correctInput += ( data === 'custom argument' ? 1 : 0 ) ;
46
+ if ( correctInput === totalWorkers ) {
49
47
checks . args = true ;
50
48
}
51
49
worker . kill ( ) ;
52
50
} ) ;
53
51
54
- // All workers are online
55
- if ( onlineWorkers === totalWorkers ) {
56
- checks . workers = true ;
57
- }
58
- } ) ;
52
+ } , totalWorkers ) ) ;
59
53
60
54
// Start all workers
61
55
cluster . fork ( ) ;
62
56
cluster . fork ( ) ;
63
57
64
58
// Check all values
65
59
process . once ( 'exit' , function ( ) {
66
- assert . ok ( checks . workers , 'Not all workers went online' ) ;
67
- assert . ok ( checks . args , 'The arguments was noy send to the worker' ) ;
60
+ const argsMsg = 'Arguments was not send for one or more worker. ' +
61
+ `${ correctInput } workers receive argument, ` +
62
+ `but ${ totalWorkers } were expected.` ;
63
+ assert . ok ( checks . args , argsMsg ) ;
64
+
68
65
assert . ok ( checks . setupEvent , 'The setup event was never emitted' ) ;
69
- const m = 'The settingsObject do not have correct properties' ;
70
- assert . ok ( checks . settingsObject , m ) ;
66
+
67
+ const settingObjectMsg = 'The settingsObject do not have correct ' +
68
+ `properties : ${ JSON . stringify ( settings ) } ` ;
69
+ assert . ok ( checks . settingsObject , settingObjectMsg ) ;
71
70
} ) ;
72
71
73
72
}
0 commit comments