Explorar el Código

Add recents test

Tienson Qin hace 2 años
padre
commit
f4309bdc2b

+ 1 - 2
src/main/frontend/handler/db_based/recent.cljs

@@ -23,6 +23,5 @@
        (distinct)
        (map (fn [id]
               (let [e (db/entity [:block/uuid id])]
-                (or (:block/original-name e)
-                    (:block/uuid e)))))
+                (:block/original-name e))))
        (remove string/blank?)))

+ 27 - 1
src/test/frontend/handler/db_based/recent_test.cljs

@@ -1 +1,27 @@
-(ns frontend.handler.db-based.recent-test)
+(ns frontend.handler.db-based.recent-test
+  (:require [frontend.handler.db-based.recent :as db-recent-handler]
+            [clojure.test :refer [deftest is testing use-fixtures]]
+            [frontend.test.helper :as test-helper]
+            [datascript.core :as d]
+            [frontend.handler.page :as page-handler]))
+
+(def init-data (test-helper/initial-test-page-and-blocks))
+(defn start-and-destroy-db
+  [f]
+  (test-helper/db-based-start-and-destroy-db
+   f
+   {:init-data (fn [conn] (d/transact! conn init-data))}))
+
+(use-fixtures :each start-and-destroy-db)
+
+(deftest recents-test
+  (testing "Add some pages to recent"
+    (let [pages (map (fn [i] (str "Page " i)) (range 15))]
+      ;; create pages
+      (doseq [page pages]
+        (page-handler/create! page {:redirect? false :create-first-block? false :class? true})
+        (db-recent-handler/add-page-to-recent! page false))
+      (is (= (db-recent-handler/get-recent-pages) (reverse pages)))
+      (testing "Click existing recent item shouldn't update its position"
+        (db-recent-handler/add-page-to-recent! "Page 10" true)
+        (is (= (db-recent-handler/get-recent-pages) (reverse pages)))))))