@@ -328,8 +328,12 @@ snapshots_prop(Conf, Commands) ->
328
328
end .
329
329
330
330
log_gen (Size ) ->
331
- ? LET (EPids , vector (2 , pid_gen ()),
332
- ? LET (CPids , vector (2 , pid_gen ()),
331
+ Nodes = [node (),
332
+ fakenode@fake ,
333
+ fakenode@fake2
334
+ ],
335
+ ? LET (EPids , vector (2 , pid_gen (Nodes )),
336
+ ? LET (CPids , vector (2 , pid_gen (Nodes )),
333
337
resize (Size ,
334
338
list (
335
339
frequency (
@@ -342,18 +346,20 @@ log_gen(Size) ->
342
346
{2 , checkout_gen (oneof (CPids ))},
343
347
{1 , checkout_cancel_gen (oneof (CPids ))},
344
348
{1 , down_gen (oneof (EPids ++ CPids ))},
349
+ {1 , nodeup_gen (Nodes )},
345
350
{1 , purge }
346
351
]))))).
347
352
348
- pid_gen () ->
349
- ? LET (Node , oneof ([atom_to_binary (node (), utf8 ),
350
- <<" fakenode@fake" >>,
351
- <<" fakenode@fake2" >>
352
- ]), fake_external_pid (Node )).
353
+ pid_gen (Nodes ) ->
354
+ ? LET (Node , oneof (Nodes ),
355
+ fake_external_pid (atom_to_binary (Node , utf8 ))).
353
356
354
357
down_gen (Pid ) ->
355
358
? LET (E , {down , Pid , oneof ([noconnection , noproc ])}, E ).
356
359
360
+ nodeup_gen (Nodes ) ->
361
+ {nodeup , oneof (Nodes )}.
362
+
357
363
enqueue_gen (Pid ) ->
358
364
? LET (E , {enqueue , Pid ,
359
365
frequency ([{10 , enqueue },
@@ -451,6 +457,8 @@ handle_op({down, Pid, Reason} = Cmd, #t{down = Down} = T) ->
451
457
% % it is either not down or down with noconnection
452
458
do_apply (Cmd , T # t {down = maps :put (Pid , Reason , Down )})
453
459
end ;
460
+ handle_op ({nodeup , _ } = Cmd , T ) ->
461
+ do_apply (Cmd , T );
454
462
handle_op ({input_event , requeue }, # t {effects = Effs } = T ) ->
455
463
% % this simulates certain settlements arriving out of order
456
464
case queue :out (Effs ) of
0 commit comments