diff --git a/src/greenpowermonitor/test_doubles.cljc b/src/greenpowermonitor/test_doubles.cljc index 312a71f..dc2565d 100644 --- a/src/greenpowermonitor/test_doubles.cljc +++ b/src/greenpowermonitor/test_doubles.cljc @@ -75,8 +75,9 @@ {:keys [spying stubbing ignoring throwing] :or {spying [] stubbing [] ignoring [] throwing []}} doubles] `(with-redefs ~(create-doubles-list spying stubbing ignoring throwing) - ~@body - (reset! *spies-atom* {}))))) + (let [result# (do ~@body)] + (reset! *spies-atom* {}) + result#))))) (defn calls-to [function] (if-let [calls (some-> *spies-atom* deref (get function) deref)] diff --git a/test/greenpowermonitor/test_doubles_test.cljc b/test/greenpowermonitor/test_doubles_test.cljc index d36e2da..34df538 100644 --- a/test/greenpowermonitor/test_doubles_test.cljc +++ b/test/greenpowermonitor/test_doubles_test.cljc @@ -132,3 +132,7 @@ :cljs (ex-message e)))) (is (= some-map (ex-data e)))))))) + +(deftest returning-the-body-value + (is (= "hi there" + (td/with-doubles "hi there"))))