test(e2e,rtc): preserve remote-graph if testcase failed

This commit is contained in:
rcmerci
2025-05-23 17:34:32 +08:00
parent d666d1ddfe
commit edb574fff4
2 changed files with 19 additions and 8 deletions

View File

@@ -13,6 +13,8 @@
(def ^:dynamic *pw-page->console-logs* nil)
(def ^:dynamic *preserve-graph* nil)
(defn screenshot
[page test-name]
(println :screenshot test-name)
@@ -46,7 +48,10 @@
(when-let [pw-page->console-logs (some-> *pw-page->console-logs* deref)]
(doseq [[_pw-page logs] pw-page->console-logs]
(spit (format "e2e-dump/console-logs-%s.txt" (System/currentTimeMillis))
(with-out-str (pp/pprint logs))))))
(with-out-str (pp/pprint logs)))))
(when (some? *preserve-graph*)
(set! *preserve-graph* true)))
(defmethod t/report :fail
[m]
@@ -63,8 +68,11 @@
(doseq [page (mapcat pw-page/get-pages all-contexts)]
(screenshot page (string/join "-" (map (comp str :name meta) t/*testing-vars*)))))
;; dump console logs
;; dump console logs
(when-let [pw-page->console-logs (some-> *pw-page->console-logs* deref)]
(doseq [[_pw-page logs] pw-page->console-logs]
(spit (format "e2e-dump/console-logs-%s.txt" (System/currentTimeMillis))
(with-out-str (pp/pprint logs))))))
(with-out-str (pp/pprint logs)))))
(when (some? *preserve-graph*)
(set! *preserve-graph* true)))

View File

@@ -4,6 +4,7 @@
[com.climate.claypoole :as cp]
[logseq.e2e.assert :as assert]
[logseq.e2e.block :as b]
[logseq.e2e.custom-report :as custom-report]
[logseq.e2e.fixtures :as fixtures :refer [*page1 *page2]]
[logseq.e2e.graph :as graph]
[logseq.e2e.keyboard :as k]
@@ -33,11 +34,13 @@
(graph/wait-for-remote-graph graph-name)
(graph/switch-graph graph-name true))
(f)
;; cleanup
(w/with-page @*page2
(graph/remove-remote-graph graph-name))))
(binding [custom-report/*preserve-graph* false]
(f)
;; cleanup
(if custom-report/*preserve-graph*
(println "Don't remove graph: " graph-name)
(w/with-page @*page2
(graph/remove-remote-graph graph-name))))))
(defn- new-logseq-page
"new logseq page and switch to this page on both page1 and page2"