Skip to content

Commit 059d244

Browse files
author
sogaiu
committed
Add some tests for Clojure 1.12 syntax changes
1 parent be514ee commit 059d244

File tree

3 files changed

+262
-0
lines changed

3 files changed

+262
-0
lines changed
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
===============================================================================
2+
No Symbols
3+
================================================================================
4+
5+
^[] java.lang.String/.toUpperCase
6+
^[] String/.toUpperCase
7+
8+
--------------------------------------------------------------------------------
9+
10+
(source
11+
(sym_lit
12+
meta: (meta_lit
13+
value: (vec_lit))
14+
namespace: (sym_ns)
15+
name: (sym_name))
16+
(sym_lit
17+
meta: (meta_lit
18+
value: (vec_lit))
19+
namespace: (sym_ns)
20+
name: (sym_name)))
21+
22+
================================================================================
23+
One Symbol
24+
================================================================================
25+
26+
^[Locale] String/.toUpperCase
27+
^[java.util.Locale] String/.toUpperCase
28+
^[String] String/.getBytes
29+
^[String] String/new
30+
^[long] Math/abs
31+
32+
--------------------------------------------------------------------------------
33+
34+
(source
35+
(sym_lit
36+
meta: (meta_lit
37+
value: (vec_lit
38+
value: (sym_lit
39+
name: (sym_name))))
40+
namespace: (sym_ns)
41+
name: (sym_name))
42+
(sym_lit
43+
meta: (meta_lit
44+
value: (vec_lit
45+
value: (sym_lit
46+
name: (sym_name))))
47+
namespace: (sym_ns)
48+
name: (sym_name))
49+
(sym_lit
50+
meta: (meta_lit
51+
value: (vec_lit
52+
value: (sym_lit
53+
name: (sym_name))))
54+
namespace: (sym_ns)
55+
name: (sym_name))
56+
(sym_lit
57+
meta: (meta_lit
58+
value: (vec_lit
59+
value: (sym_lit
60+
name: (sym_name))))
61+
namespace: (sym_ns)
62+
name: (sym_name))
63+
(sym_lit
64+
meta: (meta_lit
65+
value: (vec_lit
66+
value: (sym_lit
67+
name: (sym_name))))
68+
namespace: (sym_ns)
69+
name: (sym_name)))
70+
71+
================================================================================
72+
Two Symbols
73+
================================================================================
74+
75+
^[long long] UUID/new
76+
^[long long] java.util.UUID/new
77+
78+
--------------------------------------------------------------------------------
79+
80+
(source
81+
(sym_lit
82+
meta: (meta_lit
83+
value: (vec_lit
84+
value: (sym_lit
85+
name: (sym_name))
86+
value: (sym_lit
87+
name: (sym_name))))
88+
namespace: (sym_ns)
89+
name: (sym_name))
90+
(sym_lit
91+
meta: (meta_lit
92+
value: (vec_lit
93+
value: (sym_lit
94+
name: (sym_name))
95+
value: (sym_lit
96+
name: (sym_name))))
97+
namespace: (sym_ns)
98+
name: (sym_name)))
99+
100+
================================================================================
101+
Using an Underscore
102+
================================================================================
103+
104+
^[_ _] clojure.lang.Tuple/create
105+
^[objects _] Arrays/binarySearch
106+
^["[Ljava.lang.Object;" _] Arrays/binarySearch
107+
108+
--------------------------------------------------------------------------------
109+
110+
(source
111+
(sym_lit
112+
meta: (meta_lit
113+
value: (vec_lit
114+
value: (sym_lit
115+
name: (sym_name))
116+
value: (sym_lit
117+
name: (sym_name))))
118+
namespace: (sym_ns)
119+
name: (sym_name))
120+
(sym_lit
121+
meta: (meta_lit
122+
value: (vec_lit
123+
value: (sym_lit
124+
name: (sym_name))
125+
value: (sym_lit
126+
name: (sym_name))))
127+
namespace: (sym_ns)
128+
name: (sym_name))
129+
(sym_lit
130+
meta: (meta_lit
131+
value: (vec_lit
132+
value: (str_lit)
133+
value: (sym_lit
134+
name: (sym_name))))
135+
namespace: (sym_ns)
136+
name: (sym_name)))
137+
138+
================================================================================
139+
Using Unquoting
140+
================================================================================
141+
142+
^[~a-type ~b-type] SwissArmy/staticArityOverloadMethod
143+
144+
--------------------------------------------------------------------------------
145+
146+
(source
147+
(sym_lit
148+
meta: (meta_lit
149+
value: (vec_lit
150+
value: (unquoting_lit
151+
value: (sym_lit
152+
name: (sym_name)))
153+
value: (unquoting_lit
154+
value: (sym_lit
155+
name: (sym_name)))))
156+
namespace: (sym_ns)
157+
name: (sym_name)))
158+

test/corpus/qualified-methods.txt

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
================================================================================
2+
Functions That Invoke Static Methods
3+
================================================================================
4+
5+
java.lang.Math/abs
6+
Math/abs
7+
(map Math/abs [-1 0 1])
8+
9+
--------------------------------------------------------------------------------
10+
11+
(source
12+
(sym_lit
13+
(sym_ns)
14+
(sym_name))
15+
(sym_lit
16+
(sym_ns)
17+
(sym_name))
18+
(list_lit
19+
(sym_lit
20+
(sym_name))
21+
(sym_lit
22+
(sym_ns)
23+
(sym_name))
24+
(vec_lit
25+
(num_lit)
26+
(num_lit)
27+
(num_lit))))
28+
29+
================================================================================
30+
Functions That Invoke Instance Methods
31+
================================================================================
32+
33+
java.lang.String/.toUpperCase
34+
String/.toUpperCase
35+
(map String/.toUpperCase ["ant" "bee"])
36+
37+
--------------------------------------------------------------------------------
38+
39+
(source
40+
(sym_lit
41+
(sym_ns)
42+
(sym_name))
43+
(sym_lit
44+
(sym_ns)
45+
(sym_name))
46+
(list_lit
47+
(sym_lit
48+
(sym_name))
49+
(sym_lit
50+
(sym_ns)
51+
(sym_name))
52+
(vec_lit
53+
(str_lit)
54+
(str_lit))))
55+
56+
================================================================================
57+
Functions That Invoke Constructors
58+
================================================================================
59+
60+
java.lang.Long/new
61+
Long/new
62+
(map Long/new [0 1 2])
63+
64+
--------------------------------------------------------------------------------
65+
66+
(source
67+
(sym_lit
68+
(sym_ns)
69+
(sym_name))
70+
(sym_lit
71+
(sym_ns)
72+
(sym_name))
73+
(list_lit
74+
(sym_lit
75+
(sym_name))
76+
(sym_lit
77+
(sym_ns)
78+
(sym_name))
79+
(vec_lit
80+
(num_lit)
81+
(num_lit)
82+
(num_lit))))
83+
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
================================================================================
2+
Symbolic Array Type Representation
3+
================================================================================
4+
5+
java.lang.String/1
6+
String/1
7+
double/2
8+
9+
--------------------------------------------------------------------------------
10+
11+
(source
12+
(sym_lit
13+
(sym_ns)
14+
(sym_name))
15+
(sym_lit
16+
(sym_ns)
17+
(sym_name))
18+
(sym_lit
19+
(sym_ns)
20+
(sym_name)))
21+

0 commit comments

Comments
 (0)