@@ -287,11 +287,16 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
287287 assert .Nil (t , result2 )
288288
289289 pausable .Resume ()
290+ paused , resumed = pausable .IsPausedIsResumed ()
290291
291292 select {
293+ case <- paused :
294+ assert .Fail (t , "Queue should be resumed" )
295+ return
292296 case <- resumed :
293297 default :
294298 assert .Fail (t , "Queue should be resumed" )
299+ return
295300 }
296301
297302 select {
@@ -345,16 +350,22 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
345350
346351 pausable .Resume ()
347352
353+ paused , resumed = pausable .IsPausedIsResumed ()
348354 select {
355+ case <- paused :
356+ assert .Fail (t , "Queue should not be paused" )
357+ return
349358 case <- resumed :
350359 default :
351360 assert .Fail (t , "Queue should be resumed" )
361+ return
352362 }
353363
354364 select {
355365 case result1 = <- handleChan :
356366 case <- time .After (500 * time .Millisecond ):
357367 assert .Fail (t , "handler chan should contain test1" )
368+ return
358369 }
359370 assert .Equal (t , test1 .TestString , result1 .TestString )
360371 assert .Equal (t , test1 .TestInt , result1 .TestInt )
@@ -369,7 +380,12 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
369380 }
370381
371382 // 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+ }
373389
374390 err = queue .Push (& test1 )
375391 assert .NoError (t , err )
@@ -378,6 +394,7 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
378394 select {
379395 case <- handleChan :
380396 assert .Fail (t , "Handler processing should have stopped" )
397+ return
381398 default :
382399 }
383400
@@ -393,6 +410,7 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
393410 select {
394411 case <- handleChan :
395412 assert .Fail (t , "Handler processing should have stopped" )
413+ return
396414 default :
397415 }
398416
@@ -431,6 +449,7 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
431449 select {
432450 case <- handleChan :
433451 assert .Fail (t , "Handler processing should have stopped" )
452+ return
434453 case <- paused :
435454 }
436455
@@ -449,13 +468,36 @@ func TestPersistableChannelQueue_Pause(t *testing.T) {
449468 select {
450469 case <- handleChan :
451470 assert .Fail (t , "Handler processing should have stopped" )
471+ return
452472 default :
453473 }
454474
455475 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+ }
456486
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+ }
459501 if result4 .TestString == test1 .TestString {
460502 result3 , result4 = result4 , result3
461503 }
0 commit comments