Browse Source

fix: rtc e2e tests

Tienson Qin 3 months ago
parent
commit
7605ed61a0

+ 5 - 1
clj-e2e/src/logseq/e2e/playwright_page.clj

@@ -4,6 +4,10 @@
             [logseq.e2e.config :as config]
             [wally.main :as w]))
 
+(defn get-test-url
+  [port]
+  (str "http://localhost:" (or port @config/*port) "?rtc-test=true"))
+
 (defn get-pages
   [pw-ctx]
   (.pages pw-ctx))
@@ -11,7 +15,7 @@
 (defn open-pages
   "Pages in same pw-ctx share cookies and storages"
   [pw-ctx n]
-  (let [url (str "http://localhost:" @config/*port)]
+  (let [url (get-test-url nil)]
     (dotimes [_i n]
       (let [page (.newPage pw-ctx)]
         (.navigate page url)

+ 3 - 2
clj-e2e/test/logseq/e2e/fixtures.clj

@@ -4,6 +4,7 @@
             [logseq.e2e.custom-report :as custom-report]
             [logseq.e2e.graph :as graph]
             [logseq.e2e.page :as page]
+            [logseq.e2e.playwright-page :as pw-page]
             [logseq.e2e.settings :as settings]
             [wally.main :as w]))
 
@@ -18,7 +19,7 @@
     (w/grant-permissions :clipboard-write :clipboard-read)
     (binding [custom-report/*pw-contexts* #{(.context (w/get-page))}
               custom-report/*pw-page->console-logs* (atom {})]
-      (w/navigate (str "http://localhost:" (or port @config/*port)))
+      (w/navigate (pw-page/get-test-url port))
       (settings/developer-mode)
       (w/refresh)
       (assert/assert-graph-loaded?)
@@ -48,7 +49,7 @@
               w/*page* (delay (throw (ex-info "Don't use *page*, use *page1* and *page2* instead" {})))]
       (run!
        #(w/with-page %
-          (w/navigate (str "http://localhost:" port'))
+          (w/navigate (pw-page/get-test-url port))
           (settings/developer-mode)
           (w/refresh)
           (assert/assert-graph-loaded?)

+ 2 - 1
src/main/frontend/components/block.cljs

@@ -4396,7 +4396,8 @@
 
 (rum/defc block-list
   [config blocks]
-  (let [[virtualized? _] (rum/use-state (not (or (and (:journals? config) (< (count blocks) 50))
+  (let [[virtualized? _] (rum/use-state (not (or (string/includes? js/window.location.search "?rtc_test=true")
+                                                 (and (:journals? config) (< (count blocks) 50))
                                                  (and (util/mobile?) (ldb/journal? (:block/page (first blocks))))
                                                  (:block-children? config))))
         render-item (fn [idx]