Add recents test

This commit is contained in:
Tienson Qin
2023-12-04 17:08:21 +08:00
parent dae27861d2
commit f4309bdc2b
2 changed files with 28 additions and 3 deletions

View File

@@ -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)))))))