user.clj 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  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-basic-test]
  6. [logseq.e2e.config :as config]
  7. [logseq.e2e.editor-basic-test]
  8. [logseq.e2e.fixtures :as fixtures]
  9. [logseq.e2e.graph :as graph]
  10. [logseq.e2e.keyboard :as k]
  11. [logseq.e2e.locator :as loc]
  12. [logseq.e2e.multi-tabs-basic-test]
  13. [logseq.e2e.outliner-basic-test]
  14. [logseq.e2e.plugins-basic-test]
  15. [logseq.e2e.property-basic-test]
  16. [logseq.e2e.reference-basic-test]
  17. [logseq.e2e.rtc-basic-test]
  18. [logseq.e2e.rtc-extra-test]
  19. [logseq.e2e.tag-basic-test]
  20. [logseq.e2e.util :as util]
  21. [wally.main :as w]
  22. [wally.repl :as repl]))
  23. ;; Use port 3001 for local testing
  24. (reset! config/*port 3001)
  25. ;; show ui
  26. (reset! config/*headless false)
  27. (reset! config/*slow-mo 30)
  28. (def *futures (atom {}))
  29. (defn cancel
  30. [test-name]
  31. (some-> (get @*futures test-name) future-cancel)
  32. (swap! *futures dissoc test-name))
  33. (defn run-commands-test
  34. []
  35. (->> (future (run-tests 'logseq.e2e.commands-basic-test))
  36. (swap! *futures assoc :commands-test)))
  37. (defn run-property-basic-test
  38. []
  39. (->> (future (run-tests 'logseq.e2e.property-basic-test))
  40. (swap! *futures assoc :property-test)))
  41. (defn run-outliner-test
  42. []
  43. (->> (future (run-tests 'logseq.e2e.outliner-basic-test))
  44. (swap! *futures assoc :outliner-test)))
  45. (defn run-rtc-basic-test
  46. []
  47. (->> (future (run-tests 'logseq.e2e.rtc-basic-test))
  48. (swap! *futures assoc :rtc-basic-test)))
  49. (defn run-multi-tabs-test
  50. []
  51. (->> (future (run-tests 'logseq.e2e.multi-tabs-basic-test))
  52. (swap! *futures assoc :multi-tabs-test)))
  53. (defn run-reference-test
  54. []
  55. (->> (future (run-tests 'logseq.e2e.reference-basic-test))
  56. (swap! *futures assoc :reference-test)))
  57. (defn run-plugins-test
  58. []
  59. (->> (future (run-tests 'logseq.e2e.plugins-basic-test))
  60. (swap! *futures assoc :plugins-test)))
  61. (defn run-rtc-extra-test
  62. []
  63. (->> (future (run-tests 'logseq.e2e.rtc-extra-test))
  64. (swap! *futures assoc :rtc-extra-test)))
  65. (defn run-rtc-extra-test2
  66. [& _args]
  67. (run-tests 'logseq.e2e.rtc-extra-test)
  68. (System/exit 0))
  69. (defn run-editor-basic-test
  70. []
  71. (->> (future (run-tests 'logseq.e2e.editor-basic-test))
  72. (swap! *futures assoc :editor-basic-test)))
  73. (defn run-tag-basic-test
  74. []
  75. (->> (future (run-tests 'logseq.e2e.tag-basic-test))
  76. (swap! *futures assoc :tag-basic-test)))
  77. (defn run-all-basic-test
  78. [& _]
  79. (run-tests 'logseq.e2e.editor-basic-test
  80. 'logseq.e2e.commands-basic-test
  81. 'logseq.e2e.multi-tabs-basic-test
  82. 'logseq.e2e.outliner-basic-test
  83. 'logseq.e2e.rtc-basic-test
  84. 'logseq.e2e.plugins-basic-test
  85. 'logseq.e2e.reference-basic-test
  86. 'logseq.e2e.property-basic-test
  87. 'logseq.e2e.tag-basic-test)
  88. (System/exit 0))
  89. (defn start
  90. []
  91. (future
  92. (fixtures/open-page
  93. repl/pause
  94. {:headless false})))
  95. (comment
  96. ;; You can call or put `(repl/pause)` in any test to pause the tests,
  97. ;; this allows us to continue experimenting with the current page.
  98. (repl/pause)
  99. ;; To resume the tests, close the page/context/browser
  100. (repl/resume)
  101. ;; Run specific test
  102. (future (run-test logseq.e2e.commands-test/new-property-test))
  103. ;; after the test has been paused, you can do anything with the current page like this
  104. (repl/with-page
  105. (w/wait-for (first (util/get-edit-block-container))
  106. {:state :detached}))
  107. (run-tests 'logseq.e2e.commands-basic-test
  108. 'logseq.e2e.multi-tabs-basic-test
  109. 'logseq.e2e.outliner-basic-test
  110. 'logseq.e2e.rtc-basic-test)
  111. (do
  112. (reset! config/*headless true)
  113. (reset! config/*slow-mo 10)
  114. (run-tests 'logseq.e2e.reference-basic-test)
  115. (dotimes [i 10]
  116. (run-tests 'logseq.e2e.reference-basic-test)))
  117. ;;
  118. )