diff options
Diffstat (limited to 'src/clojure/contrib/test_contrib/test_trace.clj')
-rw-r--r-- | src/clojure/contrib/test_contrib/test_trace.clj | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/clojure/contrib/test_contrib/test_trace.clj b/src/clojure/contrib/test_contrib/test_trace.clj new file mode 100644 index 00000000..4b283056 --- /dev/null +++ b/src/clojure/contrib/test_contrib/test_trace.clj @@ -0,0 +1,12 @@ +(ns clojure.contrib.test-contrib.test-trace + (:use clojure.test + [clojure.contrib trace str-utils])) + +(deftrace call-myself [n] + (when-not (< n 1) + (call-myself (dec n)))) + +(deftest test-tracing-a-function-that-calls-itself + (let [output (with-out-str (call-myself 1))] + (is (re-find #"^TRACE t\d+: (call-myself 1)\nTRACE t\d+: | (call-myself 0)\nTRACE t\d+: | => nil\nTRACE t\d+: => nil$" + output))))
\ No newline at end of file |