|
57 | 57 | (def ns-with-npm-strs-clean (clean-msg "test/resources/ns_with_npm_strs_clean.cljs"))
|
58 | 58 |
|
59 | 59 | (deftest combines-requires
|
60 |
| - (let [requires (core/get-ns-component (clean-ns ns2) :require) |
| 60 | + (let [prefix-requires (config/with-config {:prefix-rewriting true} |
| 61 | + (core/get-ns-component (clean-ns ns2) :require)) |
61 | 62 | combined-requires (core/get-ns-component ns2-cleaned :require)]
|
62 |
| - (is (= combined-requires requires)))) |
| 63 | + (is (= combined-requires prefix-requires)))) |
63 | 64 |
|
64 | 65 | (deftest meta-preserved
|
65 | 66 | (let [cleaned (pprint-ns (clean-ns ns2-meta))]
|
66 | 67 | (is (str/includes? cleaned "^{:author \"Trurl and Klapaucius\"
|
67 | 68 | :doc \"test ns with meta\"}"))))
|
68 | 69 |
|
69 | 70 | (deftest rewrites-use-to-require
|
70 |
| - (let [requires (core/get-ns-component (clean-ns ns2) :use) |
71 |
| - combined-requires (core/get-ns-component ns2-cleaned :require)] |
| 71 | + (let [combined-requires (core/get-ns-component ns2-cleaned :require)] |
72 | 72 | (is (reduce
|
73 | 73 | #(or %1 (= %2 '[clojure
|
74 | 74 | [edn :refer :all :rename {read-string rs}]
|
|
80 | 80 | (tree-seq sequential? identity combined-requires)))))
|
81 | 81 |
|
82 | 82 | (deftest keeps-clause-with-rename
|
83 |
| - (let [requires (core/get-ns-component (clean-ns ns2) :use) |
84 |
| - combined-requires (core/get-ns-component ns2-cleaned :require)] |
| 83 | + (let [combined-requires (core/get-ns-component ns2-cleaned :require)] |
85 | 84 | (is (reduce
|
86 | 85 | #(or %1 (= %2 '[edn :refer :all :rename {read-string rs}]))
|
87 | 86 | false
|
88 | 87 | (tree-seq sequential? identity combined-requires)))))
|
89 | 88 |
|
90 | 89 | (deftest test-sort-and-prefix-favoring
|
91 |
| - (let [requires (core/get-ns-component (clean-ns ns1) :require) |
| 90 | + (let [requires (core/get-ns-component |
| 91 | + (config/with-config {:prefix-rewriting true} |
| 92 | + (clean-ns ns1)) :require) |
92 | 93 | imports (core/get-ns-component (clean-ns ns1) :import)
|
93 | 94 | sorted-requires (core/get-ns-component ns1-cleaned :require)
|
94 | 95 | sorted-imports (core/get-ns-component ns1-cleaned :import)]
|
|
127 | 128 | false
|
128 | 129 | (tree-seq sequential? identity requires)))))
|
129 | 130 |
|
130 |
| -(deftest combines-multiple-refers-to-all |
131 |
| - (let [requires (clean-ns ns2) |
132 |
| - instant '[instant :refer :all]] |
133 |
| - (is (reduce |
134 |
| - #(or %1 (= %2 instant)) |
135 |
| - false |
136 |
| - (tree-seq sequential? identity requires))))) |
| 131 | +(deftest combines-multiple-refer-alls |
| 132 | + (let [[_ & libspecs] (core/get-ns-component (clean-ns ns2) :require) |
| 133 | + instant '[clojure.instant :refer :all]] |
| 134 | + (is (= (:count (reduce |
| 135 | + (fn [acc libspec] |
| 136 | + (if (= libspec instant) |
| 137 | + (update acc :count inc) |
| 138 | + acc)) |
| 139 | + {:count 0} |
| 140 | + libspecs)) |
| 141 | + 1) |
| 142 | + "Exactly one libspec present for duplicated :refer :all clause"))) |
137 | 143 |
|
138 | 144 | (deftest removes-unused-dependencies
|
139 | 145 | (let [new-ns (clean-ns ns-with-unused-deps)
|
|
196 | 202 | cljc-ns-same-clj-cljs-cleaned)))
|
197 | 203 |
|
198 | 204 | (deftest respects-no-prune-option
|
199 |
| - (config/with-config {:prune-ns-form false} |
| 205 | + (config/with-config {:prune-ns-form false |
| 206 | + :prefix-rewriting true} |
200 | 207 | (let [new-require (core/get-ns-component (clean-ns ns3) :require)
|
201 | 208 | expected-require (core/get-ns-component ns3-rebuilt :require)]
|
202 | 209 | (is (= expected-require new-require)))))
|
|
206 | 213 |
|
207 | 214 | (deftest test-pprint
|
208 | 215 | (let [ns-str (pprint-ns (clean-ns ns1))
|
209 |
| - ns1-str (slurp (.getAbsolutePath (File. "test/resources/ns1_cleaned_and_pprinted")))] |
210 |
| - (is (= ns1-str ns-str)))) |
| 216 | + ns1-str (slurp "test/resources/ns1_cleaned_and_pprinted") |
| 217 | + ns1-prefix-notation (slurp "test/resources/ns1_cleaned_and_pprinted_prefix_notation")] |
| 218 | + (is (= ns1-str ns-str)) |
| 219 | + (is (= ns1-prefix-notation (config/with-config |
| 220 | + {:prefix-rewriting true} |
| 221 | + (pprint-ns (clean-ns ns1))))))) |
211 | 222 |
|
212 | 223 | (deftest preserves-shorthand-meta
|
213 | 224 | (let [cleaned (pprint-ns (clean-ns ns-with-shorthand-meta))]
|
|
0 commit comments