@@ -51,19 +51,21 @@ class ExpressionTest {
5151
5252 @Test
5353 fun functionCall () {
54- assertEquals(Expression .MethodCall (
55- functionName = " add" ,
56- className = " math" ,
57- args = arrayOf(
54+ assertEquals(
55+ Expression .MethodCall (
56+ lhs = Expression .Identifier (" math" ),
57+ caller = Expression .Identifier (" add" ),
58+ rhs = arrayOf(
5859 Expression .IntValue (1 ),
5960 Expression .IntValue (2 )
6061 )
6162 ).toString(), " math.add(1, 2)"
6263 )
6364
64- assertEquals(Expression .MethodCall (
65- functionName = " add" ,
66- args = arrayOf(
65+ assertEquals(
66+ Expression .MethodCall (
67+ lhs = Expression .Identifier (" add" ),
68+ rhs = arrayOf(
6769 Expression .IntValue (1 ),
6870 Expression .IntValue (2 )
6971 )
@@ -73,7 +75,8 @@ class ExpressionTest {
7375
7476 @Test
7577 fun arrayLiteral () {
76- assertEquals(Expression .ArrayLiteral (
78+ assertEquals(
79+ Expression .ArrayLiteral (
7780 args = arrayOf(
7881 Expression .IntValue (1 ),
7982 Expression .IntValue (2 )
@@ -84,7 +87,8 @@ class ExpressionTest {
8487
8588 @Test
8689 fun tryCatch () {
87- assertEquals(Expression .TryCatch (
90+ assertEquals(
91+ Expression .TryCatch (
8892 tryBlock = Expression .Value (1 ),
8993 catchBlock = Expression .IntValue (2 )
9094 ).toString(), " try { 1 } catch { 2 }"
@@ -93,7 +97,8 @@ class ExpressionTest {
9397
9498 @Test
9599 fun ifElse () {
96- assertEquals(Expression .IfElse (
100+ assertEquals(
101+ Expression .IfElse (
97102 condition = Expression .IntValue (1 ),
98103 thenBlock = Expression .IntValue (2 ),
99104 elseBlock = Expression .IntValue (3 )
@@ -103,7 +108,8 @@ class ExpressionTest {
103108
104109 @Test
105110 fun compareItem () {
106- assertEquals(Expression .ComparisonOp (
111+ assertEquals(
112+ Expression .ComparisonOp (
107113 lhs = Expression .IntValue (1 ),
108114 op = ComparisonOpKind .GreaterThan ,
109115 rhs = Expression .IntValue (2 )
@@ -123,12 +129,13 @@ class ExpressionTest {
123129 )
124130 )
125131
126- assertEquals(" a + ( b - c) " , binOp.toString())
132+ assertEquals(" a + b - c" , binOp.toString())
127133 }
128134
129135 @Test
130136 fun assignment () {
131- assertEquals(Expression .AssignOp (
137+ assertEquals(
138+ Expression .AssignOp (
132139 lhs = Expression .Variable (" a" ),
133140 op = AssignOpKind .Assign ,
134141 rhs = Expression .IntValue (1 )
@@ -138,7 +145,8 @@ class ExpressionTest {
138145
139146 @Test
140147 fun switchCase () {
141- assertEquals(Expression .SwitchCases (
148+ assertEquals(
149+ Expression .SwitchCases (
142150 lhs = Expression .Variable (" a" ),
143151 cases = arrayOf(
144152 Expression .CaseOp (
@@ -151,7 +159,40 @@ class ExpressionTest {
151159 )
152160 ),
153161 defaultBlock = Expression .IntValue (4 )
154- ).toString(), " switch (a) { case 1: 2; case 2: 3; default: 4; }"
162+ ).toString(), " switch (a) {\n " +
163+ " case 1: 2\n " +
164+ " case 2: 3\n " +
165+ " default: 4\n " +
166+ " }"
167+ )
168+ }
169+
170+ @Test
171+ fun range () {
172+ assertEquals(
173+ Expression .RangeOp (
174+ lhs = Expression .IntValue (1 ),
175+ rhs = Expression .IntValue (2 )
176+ ).toString(), " 1..2"
177+ )
178+ }
179+
180+ @Test
181+ fun chainedMethodCall () {
182+ assertEquals(
183+ Expression .MethodCall (
184+ lhs = Expression .MethodCall (
185+ lhs = Expression .StringValue (" add" ),
186+ rhs = arrayOf(
187+ Expression .IntValue (1 ),
188+ Expression .IntValue (2 )
189+ ),
190+ ),
191+ caller = Expression .Identifier (" sub" ),
192+ rhs = arrayOf(
193+ Expression .IntValue (3 )
194+ )
195+ ).toString(), " add(1, 2).sub(3)"
155196 )
156197 }
157198}
0 commit comments