Skip to content

Commit

Permalink
Upgrade cljs workflow specs to advanced optimizations
Browse files Browse the repository at this point in the history
  • Loading branch information
brandoncorrea committed May 30, 2024
1 parent b0eb447 commit 57a3c37
Show file tree
Hide file tree
Showing 4 changed files with 54 additions and 70 deletions.
6 changes: 3 additions & 3 deletions deps.edn
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
:mvn/repos {"maven_central" {:url "https://repo.maven.apache.org/maven2/"}}
:deps {
org.clojure/clojure {:mvn/version "1.11.3"}
com.cleancoders.c3kit/wire {:mvn/version "2.1.3"}
com.cleancoders.c3kit/wire {:mvn/version "2.1.4"}
}
:aliases {
:test {:extra-paths ["spec/clj" "spec/cljc" "spec/cljs" "dev"]
:extra-deps {speclj/speclj {:mvn/version "3.4.6"}
:extra-deps {speclj/speclj {:mvn/version "3.4.8"}
org.clojure/clojurescript {:mvn/version "1.11.132"}
com.cleancoders.c3kit/scaffold {:mvn/version "2.0.2"}}}
com.cleancoders.c3kit/scaffold {:mvn/version "2.0.3"}}}
:spec {:main-opts ["-m" "speclj.main" "-c"]}
:cljs {:main-opts ["-m" "c3kit.scaffold.cljs"]}
:antq {:deps {com.github.liquidz/antq {:mvn/version "2.8.1201"}}
Expand Down
85 changes: 42 additions & 43 deletions dev/config/cljs.edn
Original file line number Diff line number Diff line change
@@ -1,45 +1,44 @@
{
:ns-prefix "bwa.mimic"
:env-keys ["BWA_ENV"]
:ignore-errors ["goog/i18n/bidi.js"
"Failed to load resource: net::ERR_FILE_NOT_FOUND"]
:development {:cache-analysis true
:optimizations :none
:output-dir "target/cljs/"
:output-to "target/cljs/bwa_mimic_dev.js"
:pretty-print true
:source-map true
:sources ["spec/cljc"
;"src/cljc" ; Remove until needed
"spec/cljs"
"src/cljs"]
:specs true
:verbose false
:watch-fn c3kit.scaffold.cljs/on-dev-compiled
}
:production {
:cache-analysis false
:infer-externs true
:optimizations :advanced
:output-dir "target/cljs/"
:output-to "target/cljs/bwa_mimic.js"
:pretty-print false
:sources [
;"src/cljc" ; Remove until needed
"src/cljs"
]
:specs false
:verbose false
}
:ci {
:cache-analysis false
:infer-externs true
:optimizations :simple
:output-dir "target/cljs/"
:output-to "target/cljs/bwa_mimic.js"
:pretty-print false
:sources ["spec/cljc" "spec/cljs" "src/cljs"]
:specs true
:verbose false
}
:ns-prefix "bwa.mimic"
:env-keys ["BWA_ENV"]
:ignore-errors ["goog/i18n/bidi.js"]
:ignore-console ["Failed to load resource: net::ERR_FILE_NOT_FOUND"]
:development {:cache-analysis true
:optimizations :none
:output-dir "target/cljs/"
:output-to "target/cljs/bwa_mimic_dev.js"
:pretty-print true
:source-map true
:sources ["spec/cljc"
;"src/cljc" ; Remove until needed
"spec/cljs"
"src/cljs"]
:specs true
:verbose false
:watch-fn c3kit.scaffold.cljs/on-dev-compiled
}
:production {
:cache-analysis false
:infer-externs true
:optimizations :advanced
:output-dir "target/cljs/"
:output-to "target/cljs/bwa_mimic.js"
:pretty-print false
:sources [
;"src/cljc" ; Remove until needed
"src/cljs"
]
:specs false
:verbose false
}
:ci {
:cache-analysis false
:optimizations :advanced
:output-dir "target/cljs/"
:output-to "target/cljs/bwa_mimic.js"
:pretty-print false
:sources ["spec/cljc" "spec/cljs" "src/cljs"]
:specs true
:verbose false
}
}
21 changes: 1 addition & 20 deletions spec/cljc/bwa/mimic/spec_helperc.cljc
Original file line number Diff line number Diff line change
@@ -1,26 +1,7 @@
(ns bwa.mimic.spec-helperc
#?(:cljs (:require-macros [bwa.mimic.spec-helperc :refer [capture-logs-around]]))
(:require [c3kit.apron.log :as log]
[taoensso.timbre :as timbre]
[speclj.core #?(:clj :refer :cljs :refer-macros) [around]]))

;; TODO [BAC]: Fix in c3kit.apron.log/capture-logs instead of here
(defn capture-log!
([config level ?ns-str ?file ?line msg-type ?err vargs_ ?base-data]
(capture-log! config level ?ns-str ?file ?line msg-type ?err vargs_ ?base-data nil nil))
([config level ?ns-str ?file ?line msg-type ?err vargs_ ?base-data callsite-id]
(capture-log! config level ?ns-str ?file ?line msg-type ?err vargs_ ?base-data callsite-id nil))
([config level ?ns-str ?file ?line msg-type ?err vargs_ ?base-data callsite-id spying?]
(swap! log/captured-logs conj [config level ?ns-str ?file ?line msg-type ?err vargs_ ?base-data callsite-id spying?])
nil))

(defmacro capture-logs-around []
`(around [it#]
(let [original-level# (:min-level timbre/*config*)]
(reset! log/captured-logs [])
(try
(timbre/set-min-level! :trace)
(with-redefs [timbre/-log! capture-log!]
(it#))
(finally
(timbre/set-min-level! original-level#))))))
`(around [it#] (log/capture-logs (it#))))
12 changes: 8 additions & 4 deletions spec/cljs/bwa/mimic/ws_interceptor_spec.cljs
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,11 @@
(should= [] (wjs/o-get event "ports"))))

(it "close"
(let [event (event/->CloseEvent @sock 1006 "just because" true)]
(wjs/add-listener @sock "close" (stub :listener))
(let [event (event/->CloseEvent @sock 1006 "just because" true)
listener (stub :listener)]
(wjs/add-listener @sock "close" listener)
(ws/dispatch-event! @sock event)
(wjs/remove-listener @sock "close" listener)
(should-have-invoked :listener {:with [event]})
(should= "close" (wjs/o-get event "type"))
(should= 1006 (wjs/o-get event "code"))
Expand All @@ -74,9 +76,11 @@
(should= "open" (wjs/o-get event "type"))))

(it "error"
(let [event (event/->ErrorEvent @sock)]
(wjs/add-listener @sock "error" (stub :listener))
(let [event (event/->ErrorEvent @sock)
listener (stub :listener)]
(wjs/add-listener @sock "error" listener)
(ws/dispatch-event! @sock event)
(wjs/remove-listener @sock "error" listener)
(should-have-invoked :listener {:with [event]})
(should= "error" (wjs/o-get event "type"))))
)
Expand Down

0 comments on commit 57a3c37

Please sign in to comment.