reagent/test/reagenttest/runtests.cljs

62 lines
1.7 KiB
Plaintext
Raw Normal View History

2015-09-14 07:09:04 +00:00
(ns ^:figwheel-always
reagenttest.runtests
(:require [reagenttest.testreagent]
[reagenttest.testcursor]
[reagenttest.testinterop]
[reagenttest.testratom]
2015-09-12 16:34:10 +00:00
[reagenttest.testratomasync]
2015-09-19 17:03:29 +00:00
[reagenttest.testtrack]
2015-09-23 15:02:48 +00:00
[reagenttest.testwithlet]
[reagenttest.testwrap]
2015-01-31 22:09:42 +00:00
[cljs.test :as test :include-macros true]
[reagent.core :as r]
[reagent.debug :refer-macros [dbg log]]
[reagentdemo.core :as demo]))
2015-01-31 22:09:42 +00:00
2014-11-29 22:47:57 +00:00
(enable-console-print!)
2013-12-16 22:19:36 +00:00
(def test-results (r/atom nil))
2013-12-16 22:19:36 +00:00
(def test-box-style {:position 'absolute
:margin-left -35
:color :#aaa})
(defn all-tests []
#_(test/run-tests 'reagenttest.testratomasync)
(test/run-all-tests #"reagenttest.test.*"))
(defmethod test/report [::test/default :summary] [m]
;; ClojureScript 2814 doesn't return anything from run-tests
(reset! test-results m)
(println "\nRan" (:test m) "tests containing"
(+ (:pass m) (:fail m) (:error m)) "assertions.")
(println (:fail m) "failures," (:error m) "errors."))
(defn run-tests []
(reset! test-results nil)
(if r/is-client
(js/setTimeout all-tests 100)
(all-tests)))
(defn test-output-mini []
(let [res @test-results]
[:div {:style test-box-style
:on-click run-tests}
(if res
(if (zero? (+ (:fail res) (:error res)))
"All tests ok"
[:span "Test failure: "
(:fail res) " failures, " (:error res) " errors."])
"testing")]))
(defn init! []
(when (some? (test/deftest empty-test))
;; Only run with :load-tests true
(reset! demo/test-results [#'test-output-mini])
(run-tests)))
2015-05-31 09:51:11 +00:00
(defn reload []
2015-09-14 07:09:04 +00:00
(demo/init!))
2015-05-31 09:51:11 +00:00
(init!)