diff --git a/flake.lock b/flake.lock
index 0f0e9ad08dadb59c6a4cf1528ae05444d34fcbe6..22754c0810e24a72f488b989015e391a7837997a 100644
--- a/flake.lock
+++ b/flake.lock
@@ -43,11 +43,10 @@
         "nixpkgs": "nixpkgs"
       },
       "locked": {
-        "lastModified": 1708355228,
-        "narHash": "sha256-UqWqoxTr5cbTSdIPUtVp22xhBMaBy3VbbFrp1SMr424=",
-        "ref": "refs/heads/main",
-        "rev": "80fd7821b0e55ec6706d638a6303c9ead2cd1059",
-        "revCount": 1,
+        "dirtyRev": "e40b8ead4d46261fccf1530507b191d9a1ef831b-dirty",
+        "dirtyShortRev": "e40b8ea-dirty",
+        "lastModified": 1708355706,
+        "narHash": "sha256-a7sHHhQPvDaEjmCAgiAN9OQRJMQNkFVNHzjIu0BYfAg=",
         "type": "git",
         "url": "file:///Users/chrg/Develop/repos/hspec-glitter"
       },
diff --git a/rtree/test/src/Control/Monad/IRTreeSpec.hs b/rtree/test/src/Control/Monad/IRTreeSpec.hs
index dac9332bd32ff2ea9bdfc5e51532d657f0299a4f..42ecdcef18315691713e2ebfbff7c7850e7b1971 100644
--- a/rtree/test/src/Control/Monad/IRTreeSpec.hs
+++ b/rtree/test/src/Control/Monad/IRTreeSpec.hs
@@ -42,10 +42,16 @@ spec = describe "examples" do
 
     rex <- runIO $ RTree.reduce predicate re
 
-    it "should find an opr" do
-      (mex, result) <- runWriterT (IRTree.reduce (debugPredicate showString (prettyExprS 0) predicate) me)
-      rex `shouldBe` mex
-      pure $ glitter ("test/expected/" <> str <> "-red") (appEndo result "")
+    onGlitterWith
+      ("test/expected/" <> str <> "-red")
+      ( \fp () -> do
+          (mex, result) <- runWriterT (IRTree.reduce (debugPredicate showString (prettyExprS 0) predicate) me)
+          writeFile fp (appEndo result "")
+          pure mex
+      )
+      do
+        it "should produce the same results as the RTree" \mex -> do
+          rex `shouldBe` mex
 
     it "should find an opr exponentially" do
       (mex, result) <- runWriterT (IRTree.reduceExp (debugPredicate showString (prettyExprS 0) predicate) me)