@@ -544,22 +544,33 @@ async def test_shutdown_empty(self):
544544 q = self .q_class ()
545545 loop = asyncio .get_running_loop ()
546546 join_task = loop .create_task (q .join ())
547- q .shutdown ()
547+ q .shutdown (immediate = False ) # unfinished tasks: 0 -> 0
548+
549+ self .assertEqual (q .qsize (), 0 )
548550
549551 await self ._ping_awaitable (join_task )
550552 self .assertTrue (join_task .done ())
553+
551554 with self .assertRaisesShutdown ():
552555 await q .put ("data" )
556+ with self .assertRaisesShutdown ():
557+ q .put_nowait ("data" )
558+
553559 with self .assertRaisesShutdown ():
554560 await q .get ()
561+ with self .assertRaisesShutdown ():
562+ q .get_nowait ()
563+
555564 await join_task
556565
557566 async def test_shutdown_nonempty (self ):
558567 q = self .q_class ()
559568 loop = asyncio .get_running_loop ()
560569 q .put_nowait ("data" )
561570 join_task = loop .create_task (q .join ())
562- q .shutdown ()
571+ q .shutdown (immediate = False ) # unfinished tasks: 1 -> 1
572+
573+ self .assertEqual (q .qsize (), 1 )
563574
564575 self .assertEqual (await q .get (), "data" )
565576
@@ -587,7 +598,9 @@ async def test_shutdown_immediate(self):
587598 loop = asyncio .get_running_loop ()
588599 q .put_nowait ("data" )
589600 join_task = loop .create_task (q .join ())
590- q .shutdown (immediate = True )
601+ q .shutdown (immediate = True ) # unfinished tasks: 1 -> 0
602+
603+ self .assertEqual (q .qsize (), 0 )
591604
592605 await self ._ping_awaitable (join_task )
593606 self .assertTrue (join_task .done ())
@@ -607,8 +620,6 @@ async def test_shutdown_immediate(self):
607620 ):
608621 q .task_done ()
609622
610- await self ._ping_awaitable (join_task )
611- self .assertTrue (join_task .done ())
612623 await join_task
613624
614625 async def test_shutdown_immediate_with_unfinished (self ):
@@ -618,7 +629,7 @@ async def test_shutdown_immediate_with_unfinished(self):
618629 q .put_nowait ("data" )
619630 join_task = loop .create_task (q .join ())
620631 self .assertEqual (await q .get (), "data" )
621- q .shutdown (immediate = True )
632+ q .shutdown (immediate = True ) # unfinished tasks: 2 -> 1
622633
623634 await self ._ping_awaitable (join_task )
624635 self .assertFalse (join_task .done ())
0 commit comments