{:deps {org.babashka/http-server {:mvn/version "0.1.14"} org.babashka/cli {:mvn/version "0.8.67"}} :tasks {:requires ([babashka.cli :as cli]) :init (do (def cli-opts (cli/parse-opts *command-line-args* {:alias {:p :port :n :namespace :i :include :v :var} :coerce {:port :int :headers :edn}})) (defn clojure-with-port [cmd] (if-let [port (:port cli-opts)] (str "-J-Dport=" port " " cmd) cmd))) serve {:doc "Serve static assets" :requires ([babashka.http-server :as server]) :task (server/exec (merge {:port 3002 :dir "../static/"} cli-opts))} prn {:task (clojure "-X clojure.core/prn" cli-opts)} test {:doc "run tests (ns'es ending in '-basic-test'); use -n to run a single namespace, -v to run a single test fn, -i to filter by metadata" :task (do (let [ns (:namespace cli-opts) include (:include cli-opts) var (:var cli-opts) ns-arg (when ns (str " -n " ns)) inc-arg (when include (str " -i " include)) var-arg (when var (str " -v " var)) base (if ns (str "-M:test" ns-arg " -e fix-me") "-M:test -r \".*\\-basic\\-test$\" -e fix-me")] (clojure (clojure-with-port (str base inc-arg var-arg)))) (System/exit 0))} rtc-extra-test {:doc "run rtc-extra-test" :task (do (clojure (clojure-with-port "-M:test -n logseq.e2e.rtc-extra-test")) (System/exit 0))} rtc-extra-part2-test {:doc "run rtc-extra-part2-test" :task (do (clojure (clojure-with-port "-M:test -n logseq.e2e.rtc-extra-part2-test")) (System/exit 0))} -run-rtc-extra-test {:depends [serve prn rtc-extra-test]} run-rtc-extra-test {:task (run '-run-rtc-extra-test {:parallel true})} -run-rtc-extra-part2-test {:depends [serve prn rtc-extra-part2-test]} run-rtc-extra-part2-test {:task (run '-run-rtc-extra-part2-test {:parallel true})} -dev {:depends [serve prn test]} dev {:doc "serve and test" :task (run '-dev {:parallel true})}}}