|
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