Skip to content

Commit 9f988d8

Browse files
committed
* add basic do
* failing let, due to missing :form
1 parent 2009627 commit 9f988d8

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

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

+14
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,22 @@
1616
(is (s/valid? ::a/node (analyze ns-env '(if true true))))
1717
(is (s/valid? ::a/node (analyze ns-env '(if true true false)))))
1818

19+
(deftest test-do
20+
(is (s/valid? ::a/node (analyze ns-env '(do))))
21+
(is (s/valid? ::a/node (analyze ns-env '(do 1))))
22+
(is (s/valid? ::a/node (analyze ns-env '(do 1 2 3)))))
23+
24+
(deftest test-let
25+
(is (s/valid? ::a/node (analyze ns-env '(let []))))
26+
;(is (s/valid? ::a/node (analyze ns-env '(let [x 1]))))
27+
;(is (s/valid? ::a/node (analyze ns-env '(let [x 1] x))))
28+
)
29+
1930
(comment
2031

2132
(test/run-tests)
2233

34+
;; binding is missing :form
35+
(s/explain ::a/node (analyze ns-env '(let [x 1])))
36+
2337
)

src/test/clojure/cljs/analyzer/specs.cljc

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@
151151
(s/keys
152152
:req-un [::t ::body])))
153153

154-
(s/def ::statements ::node)
154+
(s/def ::statements (s/* ::node))
155155
(s/def ::ret ::node)
156156
(s/def ::body? boolean?)
157157

0 commit comments

Comments
 (0)