From 5b1bfeed2b6069280f99fd5860c626ee621469b7 Mon Sep 17 00:00:00 2001 From: Gabriel Horner Date: Thu, 26 Feb 2026 12:21:54 -0500 Subject: [PATCH] fix: db lint Also silence noisy successful db test which distracts from actual failing tests --- deps/db/src/logseq/db.cljs | 13 +++++++------ deps/db/src/logseq/db/test/helper.cljs | 11 +++++++++++ deps/db/test/logseq/db_test.cljs | 6 ++++-- 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/deps/db/src/logseq/db.cljs b/deps/db/src/logseq/db.cljs index bd1ce14382..01ce48aecd 100644 --- a/deps/db/src/logseq/db.cljs +++ b/deps/db/src/logseq/db.cljs @@ -678,6 +678,12 @@ db v)) +(defn- add-entity + [acc class-id entity] + (if class-id + (update acc class-id (fnil conj #{}) entity) + acc)) + (defn get-bidirectional-properties "Given a target entity id, returns a seq of maps with: * :class - class entity @@ -685,12 +691,7 @@ * :entities - node entities that reference the target via ref properties" [db target-id] (when (and db target-id (d/entity db target-id)) - (let [add-entity - (fn [acc class-id entity] - (if class-id - (update acc class-id (fnil conj #{}) entity) - acc)) - *attr->bidirectional? (volatile! {}) + (let [*attr->bidirectional? (volatile! {}) bidirectional-property-attr-cached? (fn [attr] (let [cache @*attr->bidirectional?] diff --git a/deps/db/src/logseq/db/test/helper.cljs b/deps/db/src/logseq/db/test/helper.cljs index aa6b87dec5..158260b2fe 100644 --- a/deps/db/src/logseq/db/test/helper.cljs +++ b/deps/db/src/logseq/db/test/helper.cljs @@ -92,3 +92,14 @@ _ (when (::sqlite-export/graph-files export-map) (d/transact! conn (::sqlite-export/graph-files export-map)))] conn)) + +(defmacro silence-stderr + "Silence stderr as successful tests should print long stderr messages" + [& body] + `(let [orig-write# (.-write js/process.stderr)] + (set! (.-write js/process.stderr) + (fn [& _] true)) + (try + ~@body + (finally + (set! (.-write js/process.stderr) orig-write#))))) diff --git a/deps/db/test/logseq/db_test.cljs b/deps/db/test/logseq/db_test.cljs index 0287e66df0..dae945bd16 100644 --- a/deps/db/test/logseq/db_test.cljs +++ b/deps/db/test/logseq/db_test.cljs @@ -100,8 +100,10 @@ (let [conn (db-test/create-conn)] (testing "#Task shouldn't be converted to property" (is (thrown? js/Error - (with-out-str (ldb/transact! conn [{:db/ident :logseq.class/Task - :block/tags :logseq.class/Property}]))))) + (with-out-str + (db-test/silence-stderr + (ldb/transact! conn [{:db/ident :logseq.class/Task + :block/tags :logseq.class/Property}])))))) (ldb/transact-with-temp-conn! conn {}