user.clj 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. (ns user
  2. "fns used on repl"
  3. (:require [clojure.test :refer [run-tests run-test]]
  4. [logseq.e2e.block :as b]
  5. [logseq.e2e.commands-test]
  6. [logseq.e2e.config :as config]
  7. [logseq.e2e.fixtures :as fixtures]
  8. [logseq.e2e.graph :as graph]
  9. [logseq.e2e.keyboard :as k]
  10. [logseq.e2e.multi-tabs-test]
  11. [logseq.e2e.outliner-test]
  12. [logseq.e2e.rtc-basic-test]
  13. [logseq.e2e.util :as util]
  14. [wally.main :as w]
  15. [wally.repl :as repl]))
  16. ;; Use port 3001 for local testing
  17. (reset! config/*port 3001)
  18. ;; show ui
  19. (reset! config/*headless false)
  20. (reset! config/*slow-mo 100)
  21. (def *futures (atom {}))
  22. (defn cancel
  23. [test-name]
  24. (some-> (get @*futures test-name) future-cancel)
  25. (swap! *futures dissoc test-name))
  26. (defn run-commands-test
  27. []
  28. (->> (future (run-tests 'logseq.e2e.commands-test))
  29. (swap! *futures assoc :commands-test)))
  30. (defn run-outliner-test
  31. []
  32. (->> (future (run-tests 'logseq.e2e.outliner-test))
  33. (swap! *futures assoc :outliner-test)))
  34. (defn run-rtc-basic-test
  35. []
  36. (->> (future (run-tests 'logseq.e2e.rtc-basic-test))
  37. (swap! *futures assoc :rtc-basic-test)))
  38. (defn run-multi-tabs-test
  39. []
  40. (->> (future (run-tests 'logseq.e2e.multi-tabs-test))
  41. (swap! *futures assoc :multi-tabs-test)))
  42. (defn run-all-test
  43. []
  44. (run-tests 'logseq.e2e.commands-test
  45. 'logseq.e2e.multi-tabs-test
  46. 'logseq.e2e.outliner-test
  47. 'logseq.e2e.rtc-basic-test))
  48. (defn start
  49. []
  50. (future
  51. (fixtures/open-page
  52. repl/pause
  53. {:headless false})))
  54. (comment
  55. ;; You can call or put `(repl/pause)` in any test to pause the tests,
  56. ;; this allows us to continue experimenting with the current page.
  57. (repl/pause)
  58. ;; To resume the tests, close the page/context/browser
  59. (repl/resume)
  60. ;; Run specific test
  61. (future (run-test logseq.e2e.commands-test/new-property-test))
  62. ;; after the test has been paused, you can do anything with the current page like this
  63. (repl/with-page
  64. (w/wait-for (first (util/get-edit-block-container))
  65. {:state :detached}))
  66. (run-tests 'logseq.e2e.commands-test
  67. 'logseq.e2e.multi-tabs-test
  68. 'logseq.e2e.outliner-test
  69. 'logseq.e2e.rtc-basic-test)
  70. (do
  71. (reset! config/*headless true)
  72. (reset! config/*slow-mo 50)
  73. (dotimes [i 5]
  74. (run-multi-tabs-test)))
  75. ;;
  76. )