|
14 | 14 | (deftest collect-test
|
15 | 15 | (binding [ana.jvm/run-passes (schedule (conj ana.jvm/default-passes #'collect #'collect-closed-overs))]
|
16 | 16 | (let [c-test (-> (ast1 (let [a 1 b 2] (fn [x] (fn [] [+ (:foo {}) x a]))))
|
17 |
| - :body :ret)] |
| 17 | + :body)] |
18 | 18 | (is (= '#{a__#0} (-> c-test :closed-overs keys set)))
|
19 | 19 | (is (set/subset? #{{:form :foo
|
20 | 20 | :tag Keyword
|
|
25 | 25 | {:form {}
|
26 | 26 | :tag PersistentArrayMap
|
27 | 27 | :meta nil}}
|
28 |
| - (-> c-test :methods first :body :ret :constants keys set))) ;; it registers metadata too (line+col info) |
29 |
| - (is (= '#{a__#0 x__#0} (-> c-test :methods first :body :ret :closed-overs keys set)))))) |
| 28 | + (-> c-test :methods first :body :constants keys set))) ;; it registers metadata too (line+col info) |
| 29 | + (is (= '#{a__#0 x__#0} (-> c-test :methods first :body :closed-overs keys set)))))) |
30 | 30 |
|
31 | 31 | (deftest clear-locals-test
|
32 | 32 | (binding [ana.jvm/run-passes (schedule (conj ana.jvm/default-passes #'clear-locals))]
|
|
40 | 40 | (is (= true (-> f-expr :ret :else :then :to-clear?)))
|
41 | 41 | (is (= true (-> f-expr :ret :else :else :to-clear?))))
|
42 | 42 | (let [f-expr (-> (ast1 (fn [x] (loop [a x] (if 1 x (do x (recur x))))))
|
43 |
| - :methods first :body :ret)] |
| 43 | + :methods first :body )] |
44 | 44 | (is (= true (-> f-expr :bindings first :init :to-clear? nil?)))
|
45 |
| - (is (= true (-> f-expr :body :ret :then :to-clear?))) |
46 |
| - (is (= true (-> f-expr :body :ret :else :statements first :to-clear? nil?))) |
47 |
| - (is (= true (-> f-expr :body :ret :else :ret :exprs first :to-clear? nil?)))) |
| 45 | + (is (= true (-> f-expr :body :then :to-clear?))) |
| 46 | + (is (= true (-> f-expr :body :else :statements first :to-clear? nil?))) |
| 47 | + (is (= true (-> f-expr :body :else :ret :exprs first :to-clear? nil?)))) |
48 | 48 | (let [f-expr (-> (ast1 (loop [] (let [a 1] (loop [] a)) (recur)))
|
49 |
| - :body :statements first :body :ret :body :ret)] |
| 49 | + :body :statements first :body :body)] |
50 | 50 | (is (= true (-> f-expr :to-clear?))))
|
51 | 51 | (let [f-expr (-> (ast1 (loop [] (let [a 1] (loop [] (if 1 a (recur)))) (recur)))
|
52 |
| - :body :statements first :body :ret :body :ret :then)] |
| 52 | + :body :statements first :body :body :then)] |
53 | 53 | (is (= true (-> f-expr :to-clear?))))
|
54 | 54 | (let [f-expr (-> (ast1 (let [a 1] (loop [] (let [b 2] (loop [] (if 1 [a b] (recur)))) (recur))))
|
55 |
| - :body :ret :body :statements first :body :ret :body :ret :then :items)] |
| 55 | + :body :body :statements first :body :body :then :items)] |
56 | 56 | (is (= true (-> f-expr first :to-clear? nil?)))
|
57 | 57 | (is (= true (-> f-expr second :to-clear?))))
|
58 | 58 | (let [f-expr (-> (ast1 (let [a 1] (loop [] (if 1 a) (recur))))
|
59 |
| - :body :ret :body :statements first :then)] |
| 59 | + :body :body :statements first :then)] |
60 | 60 | (is (= true (-> f-expr :to-clear? nil?))))
|
61 | 61 | (let [f-expr (-> (ast1 (let [a 1] (loop [] (let [x (if 1 a)]) (recur))))
|
62 |
| - :body :ret :body :statements first :bindings first :init :then)] |
| 62 | + :body :body :statements first :bindings first :init :then)] |
63 | 63 | (is (= true (-> f-expr :to-clear? nil?))))))
|
0 commit comments