mirror of
https://github.com/logseq/logseq.git
synced 2026-04-26 23:25:05 +00:00
* enhance(ux): add/remove #Page to toggle page/block * enhance(ux): "p t" to set tags for selected blocks Updated "p a" to toggle displaying all properties including hidden ones. * feat: cmd+k move blocks * fix: block could be converted to page and create invalid nodes Pages with block namespace parents is nonsensical and pages in property values led to multiple validation errors. Also guard against class and property pages as namespace parents * fix: warn on failed cut+paste or indent/outdent of page blocks. Better to warn than silent failure which leaves user confused on what happened. --------- Co-authored-by: Gabriel Horner <gabriel@logseq.com>
137 lines
3.9 KiB
Clojure
137 lines
3.9 KiB
Clojure
(ns user
|
|
"fns used on repl"
|
|
(:require [clojure.test :refer [run-tests run-test]]
|
|
[logseq.e2e.block :as b]
|
|
[logseq.e2e.commands-basic-test]
|
|
[logseq.e2e.config :as config]
|
|
[logseq.e2e.editor-basic-test]
|
|
[logseq.e2e.fixtures :as fixtures]
|
|
[logseq.e2e.graph :as graph]
|
|
[logseq.e2e.keyboard :as k]
|
|
[logseq.e2e.locator :as loc]
|
|
[logseq.e2e.multi-tabs-basic-test]
|
|
[logseq.e2e.outliner-basic-test]
|
|
[logseq.e2e.plugins-basic-test]
|
|
[logseq.e2e.property-basic-test]
|
|
[logseq.e2e.reference-basic-test]
|
|
[logseq.e2e.rtc-basic-test]
|
|
[logseq.e2e.rtc-extra-test]
|
|
[logseq.e2e.tag-basic-test]
|
|
[logseq.e2e.util :as util]
|
|
[wally.main :as w]
|
|
[wally.repl :as repl]))
|
|
|
|
;; Use port 3001 for local testing
|
|
(reset! config/*port 3001)
|
|
;; show ui
|
|
(reset! config/*headless false)
|
|
(reset! config/*slow-mo 30)
|
|
|
|
(def *futures (atom {}))
|
|
|
|
(defn cancel
|
|
[test-name]
|
|
(some-> (get @*futures test-name) future-cancel)
|
|
(swap! *futures dissoc test-name))
|
|
|
|
(defn run-commands-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.commands-basic-test))
|
|
(swap! *futures assoc :commands-test)))
|
|
|
|
(defn run-property-basic-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.property-basic-test))
|
|
(swap! *futures assoc :property-test)))
|
|
|
|
(defn run-outliner-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.outliner-basic-test))
|
|
(swap! *futures assoc :outliner-test)))
|
|
|
|
(defn run-rtc-basic-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.rtc-basic-test))
|
|
(swap! *futures assoc :rtc-basic-test)))
|
|
|
|
(defn run-multi-tabs-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.multi-tabs-basic-test))
|
|
(swap! *futures assoc :multi-tabs-test)))
|
|
|
|
(defn run-reference-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.reference-basic-test))
|
|
(swap! *futures assoc :reference-test)))
|
|
|
|
(defn run-plugins-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.plugins-basic-test))
|
|
(swap! *futures assoc :plugins-test)))
|
|
|
|
(defn run-rtc-extra-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.rtc-extra-test))
|
|
(swap! *futures assoc :rtc-extra-test)))
|
|
|
|
(defn run-editor-basic-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.editor-basic-test))
|
|
(swap! *futures assoc :editor-basic-test)))
|
|
|
|
(defn run-tag-basic-test
|
|
[]
|
|
(->> (future (run-tests 'logseq.e2e.tag-basic-test))
|
|
(swap! *futures assoc :tag-basic-test)))
|
|
|
|
(defn run-all-basic-test
|
|
[]
|
|
(run-tests 'logseq.e2e.editor-basic-test
|
|
'logseq.e2e.commands-basic-test
|
|
'logseq.e2e.multi-tabs-basic-test
|
|
'logseq.e2e.outliner-basic-test
|
|
'logseq.e2e.rtc-basic-test
|
|
'logseq.e2e.plugins-basic-test
|
|
'logseq.e2e.reference-basic-test
|
|
'logseq.e2e.property-basic-test
|
|
'logseq.e2e.tag-basic-test))
|
|
|
|
(defn start
|
|
[]
|
|
(future
|
|
(fixtures/open-page
|
|
repl/pause
|
|
{:headless false})))
|
|
|
|
(comment
|
|
|
|
;; You can call or put `(repl/pause)` in any test to pause the tests,
|
|
;; this allows us to continue experimenting with the current page.
|
|
(repl/pause)
|
|
|
|
;; To resume the tests, close the page/context/browser
|
|
(repl/resume)
|
|
|
|
;; Run specific test
|
|
(future (run-test logseq.e2e.commands-test/new-property-test))
|
|
|
|
;; after the test has been paused, you can do anything with the current page like this
|
|
(repl/with-page
|
|
(w/wait-for (first (util/get-edit-block-container))
|
|
{:state :detached}))
|
|
|
|
(run-tests 'logseq.e2e.commands-basic-test
|
|
'logseq.e2e.multi-tabs-basic-test
|
|
'logseq.e2e.outliner-basic-test
|
|
'logseq.e2e.rtc-basic-test)
|
|
|
|
(do
|
|
(reset! config/*headless true)
|
|
(reset! config/*slow-mo 10)
|
|
(run-tests 'logseq.e2e.reference-basic-test)
|
|
(dotimes [i 10]
|
|
(run-tests 'logseq.e2e.reference-basic-test)))
|
|
|
|
;;
|
|
)
|