File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -626,13 +626,17 @@ def _in_outer():
626626 ctx_inner .run (lambda : unraisables .append (cm .unraisable ))
627627 unraisables .append (cm .unraisable )
628628
629- ctx_outer .run (_in_outer )
630- self .assertEqual ([x .err_msg for x in unraisables ],
631- ["Exception ignored in Py_CONTEXT_SWITCHED "
632- f"watcher callback for { ctx !r} "
633- for ctx in [ctx_inner , ctx_outer ]])
634- self .assertEqual ([str (x .exc_value ) for x in unraisables ],
635- ["boom!" , "boom!" ])
629+ try :
630+ ctx_outer .run (_in_outer )
631+ self .assertEqual ([x .err_msg for x in unraisables ],
632+ ["Exception ignored in Py_CONTEXT_SWITCHED "
633+ f"watcher callback for { ctx !r} "
634+ for ctx in [ctx_inner , ctx_outer ]])
635+ self .assertEqual ([str (x .exc_value ) for x in unraisables ],
636+ ["boom!" , "boom!" ])
637+ finally :
638+ # Break reference cycle
639+ unraisables = None
636640
637641 def test_clear_out_of_range_watcher_id (self ):
638642 with self .assertRaisesRegex (ValueError , r"Invalid context watcher ID -1" ):
You can’t perform that action at this time.
0 commit comments