diff options
author | Stuart Sierra <mail@stuartsierra.com> | 2009-04-27 02:50:04 +0000 |
---|---|---|
committer | Stuart Sierra <mail@stuartsierra.com> | 2009-04-27 02:50:04 +0000 |
commit | bb7152c94b67891dd4e28e209faca5326bd980e5 (patch) | |
tree | 13860364a0a36c09113df3dbdf42eae911367689 /src/clojure/contrib/test_is/tests.clj | |
parent | 2fcbab33cb2e616911470941f6a29ce74d75e037 (diff) |
test_is.clj: Replaced 'report' with a more flexible multimethod.
This should make it easier to write other reporting formats,
such as JUnit.
Also updated test_is/tests.clj and test_is/tap.clj
Diffstat (limited to 'src/clojure/contrib/test_is/tests.clj')
-rw-r--r-- | src/clojure/contrib/test_is/tests.clj | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/src/clojure/contrib/test_is/tests.clj b/src/clojure/contrib/test_is/tests.clj index 6687ad12..60fee95e 100644 --- a/src/clojure/contrib/test_is/tests.clj +++ b/src/clojure/contrib/test_is/tests.clj @@ -89,12 +89,21 @@ (declare original-report) -(defn custom-report [event msg expected actual] - (if (or (and (= event :fail) (= msg "Should fail")) - (and (= event :pass) (= msg "Should pass")) - (and (= event :error) (= msg "Should error"))) - (original-report :pass msg expected actual) - (original-report :fail (str msg " but got " event) expected actual))) +(defn custom-report [data] + (let [event (:type data) + msg (:message data) + expected (:expected data) + actual (:actual data) + passed (cond + (= event :fail) (= msg "Should fail") + (= event :pass) (= msg "Should pass") + (= event :error) (= msg "Should error") + :else true)] + (if passed + (original-report {:type :pass, :message msg, + :expected expected, :actual actual}) + (original-report {:type :fail, :message (str msg " but got " event) + :expected expected, :actual actual})))) ;; test-ns-hook will be used by test-is/test-ns to run tests in this ;; namespace. |