aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/zwobble/couscous/tests/frontends
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-02-28 11:36:25 +0000
committerMichael Williamson <mike@zwobble.org>2016-02-28 11:36:25 +0000
commit4e4f98062c07afdeef14d4031ca69668649e5873 (patch)
tree6415aea98dc33ab50c490fbb3f812412f6dad8f0 /src/test/java/org/zwobble/couscous/tests/frontends
parentc588167505864bece6cbb2dc68814f7d967d9a6a (diff)
Introduce InterfaceNode
Diffstat (limited to 'src/test/java/org/zwobble/couscous/tests/frontends')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/frontends/java/InnerTypeReadingTests.java22
-rw-r--r--src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java3
-rw-r--r--src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReading.java13
3 files changed, 18 insertions, 20 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/frontends/java/InnerTypeReadingTests.java b/src/test/java/org/zwobble/couscous/tests/frontends/java/InnerTypeReadingTests.java
index e11b2a1..952bf9d 100644
--- a/src/test/java/org/zwobble/couscous/tests/frontends/java/InnerTypeReadingTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/frontends/java/InnerTypeReadingTests.java
@@ -4,55 +4,55 @@ import org.junit.Test;
import static org.junit.Assert.assertEquals;
import static org.zwobble.couscous.tests.frontends.java.JavaReading.generateMethodSource;
-import static org.zwobble.couscous.tests.frontends.java.JavaReading.readClasses;
+import static org.zwobble.couscous.tests.frontends.java.JavaReading.readTypes;
public class InnerTypeReadingTests {
@Test
public void lambdaWithNoArgumentsAndExpressionBodyIsReadAsAnonymousClassCreation() {
assertEquals(
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Supplier<Integer> supplier = new java.util.function.Supplier<Integer>() {\n" +
" public Integer get() {\n" +
" return 42;\n" +
" }\n" +
"};")),
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Supplier<Integer> supplier = () -> 42;")));
}
@Test
public void lambdaWithNoArgumentsAndBlockBodyIsReadAsAnonymousClassCreation() {
assertEquals(
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Supplier<Integer> supplier = () -> 42;")),
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Supplier<Integer> supplier = () -> { return 42; };")));
}
@Test
public void lambdaWithInferredArgumentsAndBlockBodyIsReadAsAnonymousClassCreation() {
assertEquals(
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Function<Integer, Integer> function = x -> x;")),
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Function<Integer, Integer> function = (Integer x) -> x;")));
}
@Test
public void expressionMethodReferenceWithStaticReceiverIsReadAsLambda() {
assertEquals(
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Function<String, Integer> function = arg0 -> Integer.parseInt(arg0);")),
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"java.util.function.Function<String, Integer> function = Integer::parseInt;")));
}
@Test
public void expressionMethodReferenceWithInstanceReceiverIsReadAsLambda() {
assertEquals(
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"Integer x = 0; java.util.function.Supplier<String> function = () -> x.toString();")),
- readClasses(generateMethodSource("void",
+ readTypes(generateMethodSource("void",
"Integer x = 0; java.util.function.Supplier<String> function = x::toString;")));
}
}
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 442e5fa..dc5965a 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
@@ -18,7 +18,8 @@ import static org.zwobble.couscous.ast.IfStatementNode.ifStatement;
import static org.zwobble.couscous.ast.LiteralNode.literal;
import static org.zwobble.couscous.ast.LocalVariableDeclarationNode.localVariableDeclaration;
import static org.zwobble.couscous.ast.MethodCallNode.staticMethodCall;
-import static org.zwobble.couscous.ast.Operations.*;
+import static org.zwobble.couscous.ast.Operations.boxInt;
+import static org.zwobble.couscous.ast.Operations.integerAdd;
import static org.zwobble.couscous.ast.ReturnNode.returns;
import static org.zwobble.couscous.ast.ThisReferenceNode.thisReference;
import static org.zwobble.couscous.ast.TypeCoercionNode.typeCoercion;
diff --git a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReading.java b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReading.java
index 5c37dbf..408694c 100644
--- a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReading.java
+++ b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReading.java
@@ -1,9 +1,6 @@
package org.zwobble.couscous.tests.frontends.java;
-import org.zwobble.couscous.ast.ClassNode;
-import org.zwobble.couscous.ast.ExpressionNode;
-import org.zwobble.couscous.ast.ReturnNode;
-import org.zwobble.couscous.ast.StatementNode;
+import org.zwobble.couscous.ast.*;
import org.zwobble.couscous.frontends.java.JavaReader;
import java.nio.file.Files;
@@ -51,17 +48,17 @@ public class JavaReading {
}
static ClassNode readClass(String classBody) {
- List<ClassNode> classes = readClasses(classBody);
+ List<TypeNode> classes = readTypes(classBody);
assertThat(classes, hasSize(1));
- return classes.get(0);
+ return (ClassNode)classes.get(0);
}
- static List<ClassNode> readClasses(String classBody) {
+ static List<TypeNode> readTypes(String classBody) {
String javaClass = generateClassSource(classBody);
return readSource("com/example/Example.java", javaClass);
}
- private static List<ClassNode> readSource(String path, String contents) {
+ static List<TypeNode> readSource(String path, String contents) {
try {
Path directoryPath = Files.createTempDirectory(null);
try {