aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'src/test')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
index 06331aa..341ee5d 100644
--- a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
@@ -5,6 +5,7 @@ import java.nio.file.Files;
import org.junit.Test;
import org.zwobble.couscous.ast.ExpressionNode;
import org.zwobble.couscous.ast.ReturnNode;
+import org.zwobble.couscous.ast.TypeName;
import org.zwobble.couscous.frontends.java.JavaReader;
import org.zwobble.couscous.values.BooleanValue;
@@ -12,6 +13,7 @@ import static java.util.Arrays.asList;
import static org.junit.Assert.assertEquals;
import static org.zwobble.couscous.ast.LiteralNode.literal;
import static org.zwobble.couscous.ast.MethodCallNode.methodCall;
+import static org.zwobble.couscous.ast.StaticMethodCallNode.staticMethodCall;
import static org.zwobble.couscous.tests.util.ExtraFiles.deleteRecursively;
import lombok.SneakyThrows;
@@ -25,12 +27,20 @@ public class JavaReaderTests {
assertEquals(literal(false), readExpression("false"));
assertEquals(literal(42), readExpression("42"));
}
+
@Test
public void canReadInstanceMethodCalls() {
assertEquals(
methodCall(literal("hello"), "startsWith", asList(literal("h")), BooleanValue.REF),
readExpression("\"hello\".startsWith(\"h\")"));
}
+
+ @Test
+ public void canReadStaticMethodCalls() {
+ assertEquals(
+ staticMethodCall(TypeName.of("java.lang.Integer"), "parseInt", asList(literal("42"))),
+ readExpression("Integer.parseInt(\"42\")"));
+ }
@SneakyThrows
private ExpressionNode readExpression(String expressionSource) {