File tree Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -730,6 +730,26 @@ test_regression_kill_empty_supervisor = assert "regression/kill-empty-supervisor
730730 b = parallel $ delay (Milliseconds 20.0 ) $> false
731731 sequential (a <|> b)
732732
733+ test_interruptible_completes ∷ Aff Unit
734+ test_interruptible_completes = assert " test/interruptible-completes" do
735+ ref ← newRef Nothing
736+ f1 ← forkAff $
737+ generalBracket
738+ (pure unit)
739+ { killed: \_ _ -> writeRef ref (Just " killed" )
740+ , failed: \_ _ -> writeRef ref (Just " failed" )
741+ , completed: \_ _ -> writeRef ref (Just " completed" )
742+ }
743+ (\_ ->
744+ bracket
745+ (delay (Milliseconds 20.0 ))
746+ (const (pure unit))
747+ pure
748+ )
749+ delay (Milliseconds 10.0 )
750+ killFiber (error " kaboom." ) f1
751+ readRef ref <#> (_ == Just " completed" )
752+
733753main ∷ Effect Unit
734754main = do
735755 test_pure
@@ -781,3 +801,4 @@ main = do
781801 test_regression_kill_sync_async
782802 test_regression_bracket_kill_mask
783803 test_regression_kill_empty_supervisor
804+ test_interruptible_completes
You can’t perform that action at this time.
0 commit comments