diff --git a/test/Quasar/ResourceManagerSpec.hs b/test/Quasar/ResourceManagerSpec.hs
index ab8445b2769253bd51c3b26afd612504feeb6482..bd0689db7b0c8d3a933c04861c1aee0f2920ad30 100644
--- a/test/Quasar/ResourceManagerSpec.hs
+++ b/test/Quasar/ResourceManagerSpec.hs
@@ -100,3 +100,11 @@ spec = parallel $ do
           registerDisposeAction $ pure () <$ (atomically (writeTVar var2 True))
       atomically (readTVar var1) `shouldReturn` True
       atomically (readTVar var2) `shouldReturn` True
+
+    it "withRootResourceManager will start disposing when receiving an exception" $ io do
+      (`shouldThrow` \(_ :: CombinedException) -> True) do
+        withRootResourceManager do
+          linkExecution do
+            rm <- askResourceManager
+            liftIO $ throwToResourceManager rm TestException
+            sleepForever