|
2 | 2 | (:require [cljs.test :as test
|
3 | 3 | :refer-macros [run-tests deftest testing is async]]
|
4 | 4 | [cljs.js :as cljs]
|
| 5 | + [clojure.string :as string] |
5 | 6 | [cljs.nodejs :as nodejs]))
|
6 | 7 |
|
7 | 8 | (set! (.-user js/cljs) #js {})
|
|
66 | 67 |
|
67 | 68 | (deftest test-compile-str
|
68 | 69 | (async done
|
69 |
| - (let [l (latch 4 done)] |
| 70 | + (let [l (latch 6 done)] |
70 | 71 | (cljs/compile-str st "(+ 1 1)"
|
71 | 72 | (fn [{:keys [error value]}]
|
72 | 73 | (is (nil? error))
|
|
89 | 90 | (fn [{:keys [error value]}]
|
90 | 91 | (is (nil? error))
|
91 | 92 | (is (= "\"a\".toString()" value))
|
| 93 | + (inc! l))) |
| 94 | + (cljs/compile-str st "(do (defn foo [a b] (+ a b)) (foo 1 2))" nil |
| 95 | + {:context :expr} |
| 96 | + (fn [{:keys [error value]}] |
| 97 | + (is (nil? error)) |
| 98 | + (is (string/index-of value "cljs.user.foo.call(null,1,2)")) |
| 99 | + (inc! l))) |
| 100 | + (cljs/compile-str st "(do (defn foo [a b] (+ a b)) (foo 1 2))" nil |
| 101 | + {:context :expr |
| 102 | + :static-fns true} |
| 103 | + (fn [{:keys [error value]}] |
| 104 | + (is (nil? error)) |
| 105 | + (is (string/index-of value "cljs.user.foo(1,2)")) |
92 | 106 | (inc! l))))))
|
93 | 107 |
|
94 | 108 | (deftest test-eval-str
|
95 | 109 | (async done
|
96 |
| - (let [l (latch 7 done)] |
| 110 | + (let [l (latch 8 done)] |
97 | 111 | (cljs/eval-str st "(+ 1 1)" nil
|
98 | 112 | {:eval node-eval}
|
99 | 113 | (fn [{:keys [error value]}]
|
|
140 | 154 | (is (nil? error))
|
141 | 155 | (is (== 3 (js/cljs.user.foo 1 2)))
|
142 | 156 | (inc! l)))
|
| 157 | + (cljs/eval-str st "(do (defn foo [a b] (+ a b)) (foo 1 2))" nil |
| 158 | + {:eval node-eval |
| 159 | + :context :expr |
| 160 | + :def-emits-var true |
| 161 | + :static-fns true} |
| 162 | + (fn [{:keys [error value]}] |
| 163 | + (is (nil? error)) |
| 164 | + (is (== 3 value)) |
| 165 | + (inc! l))) |
143 | 166 | (cljs/eval-str st "(def foo (let [x 1] (let [x (inc x)] x)))" nil
|
144 | 167 | {:eval node-eval
|
145 | 168 | :context :statement
|
|
0 commit comments