Skip to content

Commit

Permalink
add(test): init frontend re-frame tests
Browse files Browse the repository at this point in the history
  • Loading branch information
thelissimus committed Dec 12, 2023
1 parent cb0ce04 commit e736a6c
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 5 deletions.
4 changes: 4 additions & 0 deletions project.clj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
:description "Health Samurai Challenge"
:license {:name "BSD-3-Clause"}
:dependencies [[org.clojure/clojure "1.11.1"]
[org.clojure/clojurescript "1.11.60"]
[org.clojure/test.check "1.1.1"]
;; backend
[http-kit/http-kit "2.7.0"]
[ring/ring-core "1.10.0"]
[ring/ring-devel "1.10.0"]
Expand All @@ -21,11 +23,13 @@
[expound "0.9.0"]
[lambdaisland/uri "1.16.134"]
;; frontend
[com.google.javascript/closure-compiler-unshaded "v20230802"]
[reagent "1.2.0"]
[re-frame "1.3.0"]
[superstructor/re-frame-fetch-fx "0.4.0"]
[metosin/reitit-spec "0.7.0-alpha7"]
[metosin/reitit-frontend "0.7.0-alpha7"]
[day8.re-frame/test "0.1.5"]
[day8.re-frame/tracing "0.6.2"]
[binaryage/devtools "1.0.6"]
[day8.re-frame/re-frame-10x "1.5.0"]
Expand Down
7 changes: 3 additions & 4 deletions shadow-cljs.edn
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
"test/challenge/frontend"]

:dev-http
{3000 "resources/public"}
{3000 "resources/public"
3001 "resources/public/assets/js/test"}

:builds
{:frontend
Expand All @@ -28,6 +29,4 @@
{day8.re-frame.tracing day8.re-frame.tracing-stubs}}}}
:test
{:target :browser-test
:test-dir "resources/public/assets/js/test"
:devtools {:http-port 3001
:http-root "resources/public/assets/js/test"}}}}
:test-dir "resources/public/assets/js/test"}}}
4 changes: 4 additions & 0 deletions src/challenge/frontend/subs.cljs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
(:require
[re-frame.core :as reframe]))

(reframe/reg-sub
::db
identity)

(reframe/reg-sub
::current-route
(fn [db] (:current-route db)))
Expand Down
17 changes: 16 additions & 1 deletion test/challenge/frontend/core_test.cljs
Original file line number Diff line number Diff line change
@@ -1,13 +1,28 @@
(ns challenge.frontend.core-test
(:require
[cljs.test :refer-macros [deftest is testing use-fixtures]]
[reagent.dom.client :refer [create-root render]]))
[re-frame.core :as rf]
[day8.re-frame.test :as rft]
[reagent.dom.client :refer [create-root render]]
[challenge.frontend.events :as events]
[challenge.frontend.subs :as subs]))

(deftest init
(testing "Renders correctly"
(render (create-root (.getElementById js/document "app")) [])
(is true)))

(deftest db-initial-state
(rft/run-test-sync
(rf/dispatch [::events/init-db])
(is (= @(rf/subscribe [::subs/db])
{:current-route nil
:patients-list []
:patients-query nil
:patient-current nil
:form-patient-create nil
:form-patient-update nil}))))

(defn create-app-element [tests]
(.appendChild (.-body js/document)
(doto (.createElement js/document "div")
Expand Down

0 comments on commit e736a6c

Please sign in to comment.