|
5 | 5 | (:require |
6 | 6 | [clojure.pprint :as pprint] |
7 | 7 | [clojure.set :as set] |
8 | | - [clojure.test :as t] |
| 8 | + #?(:clj [clojure.test :as t] |
| 9 | + :cljs [cljs.test :as t]) |
9 | 10 | [clojure.string :as str] |
10 | 11 | [clojure.spec.alpha :as s] |
11 | 12 | [clojure.spec.test.alpha :as st] |
12 | 13 | [clojure.spec.gen.alpha :as gen] |
13 | 14 | #?(:clj [provisdom.test.spec-check :as p.st]) |
14 | 15 | #?(:cljs [orchestra-cljs.spec.test]) |
15 | | - #?(:cljs [cljs.test]) |
16 | 16 |
|
17 | 17 | ;; We require clojure.test for some CLJS code, in order for spec-check to run. |
18 | 18 | #?(:cljs [clojure.test.check]) |
|
104 | 104 | "Enables instrumentation for `sym-or-syms` while executing `body`. Once `body` has completed, |
105 | 105 | unstrument will be called." |
106 | 106 | [sym-or-syms & body] |
107 | | - (let [sym-or-syms (if (= :all sym-or-syms) `(st/instrumentable-syms) sym-or-syms)] |
| 107 | + (let [instrumentable-syms-sym (if (cljs-env? &env) |
| 108 | + 'cljs.spec.test.alpha/instrumentable-syms |
| 109 | + 'clojure.spec.test.alpha/instrumentable-syms) |
| 110 | + sym-or-syms (if (= :all sym-or-syms) `(~instrumentable-syms-sym) sym-or-syms)] |
108 | 111 | `(with-instrument* ~[sym-or-syms] ~@body))) |
109 | 112 |
|
110 | 113 | #?(:clj (defn instrumentation |
|
593 | 596 | ;; must be done at compile time for correct line number resolution |
594 | 597 | #?(:clj (defmacro do-spec-check-report |
595 | 598 | [sym-or-syms opts] |
596 | | - `(let [check-results# (spec-check- ~sym-or-syms ~opts) |
597 | | - report-map# (spec-check-report check-results#)] |
598 | | - (t/do-report report-map#)))) |
| 599 | + (let [do-report-sym (if (cljs-env? &env) |
| 600 | + 'cljs.test/do-report |
| 601 | + 'clojure.test/do-report)] |
| 602 | + `(let [check-results# (spec-check- ~sym-or-syms ~opts) |
| 603 | + report-map# (spec-check-report check-results#)] |
| 604 | + (~do-report-sym report-map#))))) |
599 | 605 |
|
600 | 606 | #?(:clj (defmethod t/assert-expr 'spec-check |
601 | 607 | [_msg form] |
|
0 commit comments