@@ -287,11 +287,16 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
287
287
assert .Nil (t , result2 )
288
288
289
289
pausable .Resume ()
290
+ paused , resumed = pausable .IsPausedIsResumed ()
290
291
291
292
select {
293
+ case <- paused :
294
+ assert .Fail (t , "Queue should be resumed" )
295
+ return
292
296
case <- resumed :
293
297
default :
294
298
assert .Fail (t , "Queue should be resumed" )
299
+ return
295
300
}
296
301
297
302
select {
@@ -345,16 +350,22 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
345
350
346
351
pausable .Resume ()
347
352
353
+ paused , resumed = pausable .IsPausedIsResumed ()
348
354
select {
355
+ case <- paused :
356
+ assert .Fail (t , "Queue should not be paused" )
357
+ return
349
358
case <- resumed :
350
359
default :
351
360
assert .Fail (t , "Queue should be resumed" )
361
+ return
352
362
}
353
363
354
364
select {
355
365
case result1 = <- handleChan :
356
366
case <- time .After (500 * time .Millisecond ):
357
367
assert .Fail (t , "handler chan should contain test1" )
368
+ return
358
369
}
359
370
assert .Equal (t , test1 .TestString , result1 .TestString )
360
371
assert .Equal (t , test1 .TestInt , result1 .TestInt )
@@ -369,7 +380,12 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
369
380
}
370
381
371
382
// Wait til it is closed
372
- <- queue .(* PersistableChannelQueue ).closed
383
+ select {
384
+ case <- queue .(* PersistableChannelQueue ).closed :
385
+ case <- time .After (5 * time .Second ):
386
+ assert .Fail (t , "queue should close" )
387
+ return
388
+ }
373
389
374
390
err = queue .Push (& test1 )
375
391
assert .NoError (t , err )
@@ -378,6 +394,7 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
378
394
select {
379
395
case <- handleChan :
380
396
assert .Fail (t , "Handler processing should have stopped" )
397
+ return
381
398
default :
382
399
}
383
400
@@ -393,6 +410,7 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
393
410
select {
394
411
case <- handleChan :
395
412
assert .Fail (t , "Handler processing should have stopped" )
413
+ return
396
414
default :
397
415
}
398
416
@@ -431,6 +449,7 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
431
449
select {
432
450
case <- handleChan :
433
451
assert .Fail (t , "Handler processing should have stopped" )
452
+ return
434
453
case <- paused :
435
454
}
436
455
@@ -449,13 +468,36 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
449
468
select {
450
469
case <- handleChan :
451
470
assert .Fail (t , "Handler processing should have stopped" )
471
+ return
452
472
default :
453
473
}
454
474
455
475
pausable .Resume ()
476
+ paused , resumed = pausable .IsPausedIsResumed ()
477
+ select {
478
+ case <- paused :
479
+ assert .Fail (t , "Queue should not be paused" )
480
+ return
481
+ case <- resumed :
482
+ default :
483
+ assert .Fail (t , "Queue should be resumed" )
484
+ return
485
+ }
456
486
457
- result3 := <- handleChan
458
- result4 := <- handleChan
487
+ var result3 , result4 * testData
488
+
489
+ select {
490
+ case result3 = <- handleChan :
491
+ case <- time .After (1 * time .Second ):
492
+ assert .Fail (t , "Handler processing should have resumed" )
493
+ return
494
+ }
495
+ select {
496
+ case result4 = <- handleChan :
497
+ case <- time .After (1 * time .Second ):
498
+ assert .Fail (t , "Handler processing should have resumed" )
499
+ return
500
+ }
459
501
if result4 .TestString == test1 .TestString {
460
502
result3 , result4 = result4 , result3
461
503
}
0 commit comments