Skip to content

Commit 3e630af

Browse files
committed
* check the :op
1 parent 55c8b12 commit 3e630af

File tree

1 file changed

+30
-10
lines changed

1 file changed

+30
-10
lines changed

src/test/clojure/cljs/analyzer/spec_tests.clj

Lines changed: 30 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,38 +18,56 @@
1818
(is (s/valid? ::a/node (analyze ns-env 1.2)))
1919
(is (s/valid? ::a/node (analyze ns-env true)))
2020
(is (s/valid? ::a/node (analyze ns-env "foo")))
21-
(is (s/valid? ::a/node (analyze ns-env [])))
21+
(let [node (analyze ns-env [])]
22+
(is (= :vector (:op node)))
23+
(is (s/valid? ::a/node node)))
2224
(is (s/valid? ::a/node (analyze ns-env [1 2 3])))
2325
(is (s/valid? ::a/node (analyze ns-env {})))
24-
(is (s/valid? ::a/node (analyze ns-env {1 2 3 4})))
26+
(let [node (analyze ns-env {1 2 3 4})]
27+
(is (= :map (:op node)))
28+
(is (s/valid? ::a/node node)))
2529
(is (s/valid? ::a/node (analyze ns-env #{})))
26-
(is (s/valid? ::a/node (analyze ns-env #{1 2 3}))))
30+
(let [node (analyze ns-env #{1 2 3})]
31+
(is (= :set (:op node)))
32+
(is (s/valid? ::a/node node))))
2733

2834
(deftest test-if
29-
(is (s/valid? ::a/node (analyze ns-env '(if true true))))
35+
(let [node (analyze ns-env '(if true true))]
36+
(is (= :if (:op node)))
37+
(is (s/valid? ::a/node node)))
3038
(is (s/valid? ::a/node (analyze ns-env '(if true true false)))))
3139

3240
(deftest test-do
33-
(is (s/valid? ::a/node (analyze ns-env '(do))))
41+
(let [node (analyze ns-env '(do))]
42+
(is (= :do (:op node)))
43+
(is (s/valid? ::a/node node)))
3444
(is (s/valid? ::a/node (analyze ns-env '(do 1))))
3545
(is (s/valid? ::a/node (analyze ns-env '(do 1 2 3)))))
3646

3747
(deftest test-let
38-
(is (s/valid? ::a/node (analyze ns-env '(let []))))
48+
(let [node (analyze ns-env '(let []))]
49+
(is (= :let (:op node)))
50+
(is (s/valid? ::a/node node)))
3951
(is (s/valid? ::a/node (analyze ns-env '(let [x 1]))))
4052
(is (s/valid? ::a/node (analyze ns-env '(let [x 1] x)))))
4153

4254
(deftest test-throw
43-
(is (s/valid? ::a/node (no-warn (analyze ns-env '(throw (js/Error. "foo")))))))
55+
(let [node (no-warn (analyze ns-env '(throw (js/Error. "foo"))))]
56+
(is (= :throw (:op node)))
57+
(is (s/valid? ::a/node node))))
4458

4559
(deftest test-def
46-
(is (s/valid? ::a/node (no-warn (analyze ns-env '(def x)))))
60+
(let [node (no-warn (analyze ns-env '(def x)))]
61+
(is (= :def (:op node)))
62+
(is (s/valid? ::a/node node)))
4763
(is (s/valid? ::a/node (no-warn (analyze ns-env '(def x 1)))))
4864
(is (s/valid? ::a/node (no-warn (analyze ns-env '(def x (fn []))))))
4965
(is (s/valid? ::a/node (no-warn (analyze ns-env '(def x (fn [y] y)))))))
5066

5167
(deftest test-fn
52-
(is (s/valid? ::a/node (no-warn (analyze ns-env '(fn [])))))
68+
(let [node (no-warn (analyze ns-env '(fn [])))]
69+
(is (= :fn (:op node)))
70+
(is (s/valid? ::a/node node)))
5371
(is (s/valid? ::a/node (no-warn (analyze ns-env '(fn [] 1)))))
5472
(is (s/valid? ::a/node (no-warn (analyze ns-env '(fn [x])))))
5573
(is (s/valid? ::a/node (no-warn (analyze ns-env '(fn [x] 1))))))
@@ -60,7 +78,9 @@
6078
(is (s/valid? ::a/node (no-warn (analyze ns-env '(defn x [y] y))))))
6179

6280
(deftest test-new
63-
(is (s/valid? ::a/node (no-warn (analyze ns-env '(new String)))))
81+
(let [node (no-warn (analyze ns-env '(new String)))]
82+
(is (= :new (:op node)))
83+
(is (s/valid? ::a/node node)))
6484
(is (s/valid? ::a/node (no-warn (analyze ns-env '(new js/String)))))
6585
(is (s/valid? ::a/node (no-warn (analyze ns-env '(String.)))))
6686
(is (s/valid? ::a/node (no-warn (analyze ns-env '(js/String.))))))

0 commit comments

Comments
 (0)