1
0
Эх сурвалжийг харах

feat(query-dsl): use test fixtures

Tienson Qin 5 жил өмнө
parent
commit
3a4a4eeba9

+ 10 - 0
src/test/frontend/db/config.cljs

@@ -0,0 +1,10 @@
+(ns frontend.db.config
+  (:require [frontend.db.conn :as conn]))
+
+(defonce test-db "test-db")
+
+(defn wrap-setup!
+  [f]
+  (conn/start! nil test-db)
+  (f)
+  (conn/destroy-all!))

+ 55 - 68
src/test/frontend/db/model_test.cljs

@@ -1,84 +1,71 @@
 (ns frontend.db.model-test
   (:require [frontend.db.model :as model]
-            [frontend.db.conn :as conn]
+            [frontend.db.config :refer [wrap-setup! test-db]]
             [datascript.core :as d]
             [frontend.db-schema :as schema]
             [frontend.handler.repo :as repo-handler]
-            [cljs.test :refer [deftest is are testing]]))
-
-(defonce test-db "test-db")
-
-(defn- run-db!
-  [f]
-  (conn/start! nil test-db)
-  (f)
-  (conn/destroy-all!))
+            [cljs.test :refer [deftest is are testing use-fixtures]]))
 
 (deftest test-page-alias-with-multiple-alias
   []
-  (run-db!
-   (fn []
-     (let [files [{:file/path "a.md"
-                   :file/content "---\ntitle: a\nalias: b, c\n---"}
-                  {:file/path "b.md"
-                   :file/content "---\ntitle: b\nalias: a, d\n---"}
-                  {:file/path "e.md"
-                   :file/content "---\ntitle: e\n---\n## ref to [[b]]"}]
-           _ (repo-handler/parse-files-and-load-to-db! test-db files {:re-render? false})
-           a-aliases (model/page-alias-set test-db "a")
-           b-aliases (model/page-alias-set test-db "b")
-           alias-names (model/get-page-alias-names test-db "a")
-           b-ref-blocks (model/get-page-referenced-blocks test-db "b")
-           a-ref-blocks (model/get-page-referenced-blocks test-db "a")]
-       (are [x y] (= x y)
-         4 (count a-aliases)
-         4 (count b-aliases)
-         1 (count b-ref-blocks)
-         1 (count a-ref-blocks)
-         ["b" "c" "d"] alias-names)))))
+  (let [files [{:file/path "a.md"
+                :file/content "---\ntitle: a\nalias: b, c\n---"}
+               {:file/path "b.md"
+                :file/content "---\ntitle: b\nalias: a, d\n---"}
+               {:file/path "e.md"
+                :file/content "---\ntitle: e\n---\n## ref to [[b]]"}]
+        _ (repo-handler/parse-files-and-load-to-db! test-db files {:re-render? false})
+        a-aliases (model/page-alias-set test-db "a")
+        b-aliases (model/page-alias-set test-db "b")
+        alias-names (model/get-page-alias-names test-db "a")
+        b-ref-blocks (model/get-page-referenced-blocks test-db "b")
+        a-ref-blocks (model/get-page-referenced-blocks test-db "a")]
+    (are [x y] (= x y)
+      4 (count a-aliases)
+      4 (count b-aliases)
+      1 (count b-ref-blocks)
+      1 (count a-ref-blocks)
+      ["b" "c" "d"] alias-names)))
 
 (deftest test-page-alias-set
   []
-  (run-db!
-   (fn []
-     (let [files [{:file/path "a.md"
-                   :file/content "---\ntitle: a\nalias: [[b]]\n---"}
-                  {:file/path "b.md"
-                   :file/content "---\ntitle: b\nalias: [[c]]\n---"}
-                  {:file/path "d.md"
-                   :file/content "---\ntitle: d\n---\n## ref to [[b]]"}]
-           _ (repo-handler/parse-files-and-load-to-db! test-db files {:re-render? false})
-           a-aliases (model/page-alias-set test-db "a")
-           b-aliases (model/page-alias-set test-db "b")
-           alias-names (model/get-page-alias-names test-db "a")
-           b-ref-blocks (model/get-page-referenced-blocks test-db "b")
-           a-ref-blocks (model/get-page-referenced-blocks test-db "a")]
-       (are [x y] (= x y)
-         3 (count a-aliases)
-         1 (count b-ref-blocks)
-         1 (count a-ref-blocks)
-         ["b" "c"] alias-names)))))
+  (let [files [{:file/path "a.md"
+                :file/content "---\ntitle: a\nalias: [[b]]\n---"}
+               {:file/path "b.md"
+                :file/content "---\ntitle: b\nalias: [[c]]\n---"}
+               {:file/path "d.md"
+                :file/content "---\ntitle: d\n---\n## ref to [[b]]"}]
+        _ (repo-handler/parse-files-and-load-to-db! test-db files {:re-render? false})
+        a-aliases (model/page-alias-set test-db "a")
+        b-aliases (model/page-alias-set test-db "b")
+        alias-names (model/get-page-alias-names test-db "a")
+        b-ref-blocks (model/get-page-referenced-blocks test-db "b")
+        a-ref-blocks (model/get-page-referenced-blocks test-db "a")]
+    (are [x y] (= x y)
+      3 (count a-aliases)
+      1 (count b-ref-blocks)
+      1 (count a-ref-blocks)
+      ["b" "c"] alias-names)))
 
 (deftest test-page-alias-without-brackets
   []
-  (run-db!
-   (fn []
-     (let [files [{:file/path "a.md"
-                   :file/content "---\ntitle: a\nalias: b\n---"}
-                  {:file/path "b.md"
-                   :file/content "---\ntitle: b\nalias: c\n---"}
-                  {:file/path "d.md"
-                   :file/content "---\ntitle: d\n---\n## ref to [[b]]"}]
-           _ (repo-handler/parse-files-and-load-to-db! test-db files {:re-render? false})
-           a-aliases (model/page-alias-set test-db "a")
-           b-aliases (model/page-alias-set test-db "b")
-           alias-names (model/get-page-alias-names test-db "a")
-           b-ref-blocks (model/get-page-referenced-blocks test-db "b")
-           a-ref-blocks (model/get-page-referenced-blocks test-db "a")]
-       (are [x y] (= x y)
-         3 (count a-aliases)
-         1 (count b-ref-blocks)
-         1 (count a-ref-blocks)
-         ["b" "c"] alias-names)))))
+  (let [files [{:file/path "a.md"
+                :file/content "---\ntitle: a\nalias: b\n---"}
+               {:file/path "b.md"
+                :file/content "---\ntitle: b\nalias: c\n---"}
+               {:file/path "d.md"
+                :file/content "---\ntitle: d\n---\n## ref to [[b]]"}]
+        _ (repo-handler/parse-files-and-load-to-db! test-db files {:re-render? false})
+        a-aliases (model/page-alias-set test-db "a")
+        b-aliases (model/page-alias-set test-db "b")
+        alias-names (model/get-page-alias-names test-db "a")
+        b-ref-blocks (model/get-page-referenced-blocks test-db "b")
+        a-ref-blocks (model/get-page-referenced-blocks test-db "a")]
+    (are [x y] (= x y)
+      3 (count a-aliases)
+      1 (count b-ref-blocks)
+      1 (count a-ref-blocks)
+      ["b" "c"] alias-names)))
 
+(use-fixtures :each wrap-setup!)
 #_(cljs.test/test-ns 'frontend.db.model-test)

+ 7 - 0
src/test/frontend/db/query_dsl_test.cljs

@@ -0,0 +1,7 @@
+(ns frontend.db.query-dsl-test
+  (:require [frontend.db.query-dsl :as query-dsl]
+            [frontend.db.conn :as conn]
+            [datascript.core :as d]
+            [frontend.db-schema :as schema]
+            [frontend.handler.repo :as repo-handler]
+            [cljs.test :refer [deftest is are testing]]))