Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 1c39356

Browse filesBrowse files
committed
aggregating related tests
1 parent f13a64e commit 1c39356
Copy full SHA for 1c39356

File tree

1 file changed

+23
-12
lines changed
Filter options

1 file changed

+23
-12
lines changed

‎test/clojure/test_clojure/param_tags.clj

Copy file name to clipboardExpand all lines: test/clojure/test_clojure/param_tags.clj
+23-12Lines changed: 23 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -170,18 +170,29 @@
170170
:instance (let [{:keys [expected actual]} (exercise-instance-method m)]
171171
(is (= expected actual))))))
172172

173-
(deftest field-shadows-method-CLJ-2899-regression
174-
(is (= "static-field" clojure.test.SwissArmy/doppelganger))
175-
(is (= "" (clojure.test.SwissArmy/doppelganger))) ;; favor 0-arity call over unwrap static field bug
176-
(is (= "int-int" (clojure.test.SwissArmy/.doppelganger (clojure.test.SwissArmy/new) (int 1) (int 2))))
177-
(is (= "int-int" (apply clojure.test.SwissArmy/.doppelganger (clojure.test.SwissArmy/new) (int 1) (int 2) [])))
178-
;; Can't distinguish field vs static method in value position w/o param-tags
179-
;; (is (= "int-int-long" (apply clojure.test.SwissArmy/doppelganger (int 1) (int 2) (long 42) [])))
180-
(is (= "" (apply ^[] clojure.test.SwissArmy/doppelganger [])))
181-
(is (= "int-int-long" (clojure.test.SwissArmy/doppelganger (int 1) (int 2) (long 42))))
182-
(is (thrown? Exception (eval '(clojure.test.SwissArmy/idFn 42))))
183-
(is (= #'clojure.core/identity clojure.test.SwissArmy/idFn))
184-
(is (= #'clojure.core/identity (clojure.test.SwissArmy/idFn))))
173+
(deftest field-overloads-method-CLJ-2899-regression
174+
(testing "overloaded in value position"
175+
(is (= "static-field" clojure.test.SwissArmy/doppelganger)))
176+
177+
(testing "overloaded in value position, w/paramtags"
178+
(is (= "" (apply ^[] clojure.test.SwissArmy/doppelganger []))))
179+
180+
(testing "overloaded, invoke no args"
181+
(is (= "" (clojure.test.SwissArmy/doppelganger))))
182+
183+
(testing "overloaded, invoke w/args"
184+
(is (= "int-int-long" (clojure.test.SwissArmy/doppelganger (int 1) (int 2) (long 42)))))
185+
186+
(tesing "non-overloaded, field holds IFn, invoke w/args fails"
187+
(is (thrown? Exception (eval '(clojure.test.SwissArmy/idFn 42))))
188+
(is (= #'clojure.core/identity clojure.test.SwissArmy/idFn)))
189+
190+
(testing "non-overloaded, field holds IFn, invoke no args"
191+
(is (= #'clojure.core/identity (clojure.test.SwissArmy/idFn))))
192+
193+
(testing "instance method overloads"
194+
(is (= "int-int" (clojure.test.SwissArmy/.doppelganger (clojure.test.SwissArmy/new) (int 1) (int 2))))
195+
(is (= "int-int" (apply clojure.test.SwissArmy/.doppelganger (clojure.test.SwissArmy/new) (int 1) (int 2) [])))))
185196

186197
(defmacro arg-tags-called-in-macro
187198
[a-type b-type a b]

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.