@@ -786,18 +786,25 @@ where
786786 if let Some ( terminate_mode) = terminate_mode {
787787 // A test failed: start cancellation if required.
788788 // Check if we should terminate immediately or wait for running tests.
789- if terminate_mode == TerminateMode :: Immediate {
790- // Terminate running tests immediately by sending a test failure event.
791- self . broadcast_request ( RunUnitRequest :: Signal ( SignalRequest :: Shutdown (
792- ShutdownRequest :: Once ( ShutdownEvent :: TestFailureImmediate ) ,
793- ) ) ) ;
789+ match terminate_mode {
790+ TerminateMode :: Immediate => {
791+ // Terminate running tests immediately.
792+ self . broadcast_request ( RunUnitRequest :: Signal (
793+ SignalRequest :: Shutdown ( ShutdownRequest :: Once (
794+ ShutdownEvent :: TestFailureImmediate ,
795+ ) ) ,
796+ ) ) ;
797+ self . begin_cancel (
798+ CancelReason :: TestFailureImmediate ,
799+ CancelEvent :: Signal ( ShutdownRequest :: Once (
800+ ShutdownEvent :: TestFailureImmediate ,
801+ ) ) ,
802+ )
803+ }
804+ TerminateMode :: Wait => {
805+ self . begin_cancel ( CancelReason :: TestFailure , CancelEvent :: TestFailure )
806+ }
794807 }
795- self . begin_cancel (
796- CancelReason :: TestFailureImmediate ,
797- CancelEvent :: Signal ( ShutdownRequest :: Once (
798- ShutdownEvent :: TestFailureImmediate ,
799- ) ) ,
800- )
801808 } else {
802809 HandleEventResponse :: None
803810 }
0 commit comments