aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/zwobble
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/zwobble')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java13
-rw-r--r--src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java9
2 files changed, 21 insertions, 1 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java b/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java
index 6b7b5d3..cc0e5af 100644
--- a/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java
@@ -82,7 +82,7 @@ public class JavaToPythonTests {
}
@Test
- public void anonymousClasses() throws Exception {
+ public void anonymousClassesWithoutCapture() throws Exception {
assertEquals(
value(42),
execTestProgram(
@@ -91,6 +91,17 @@ public class JavaToPythonTests {
"value",
asList()));
}
+
+ @Test
+ public void lambdasWithoutCapture() throws Exception {
+ assertEquals(
+ value(42),
+ execTestProgram(
+ "lambda",
+ TypeName.of("com.example.Lambda"),
+ "value",
+ asList()));
+ }
private PrimitiveValue execTestProgram(
String directoryName,
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 9dfe8b8..1be1abb 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
@@ -175,6 +175,15 @@ public class JavaReaderTests {
readClasses(generateMethodSource("void",
"java.util.function.Supplier<Integer> supplier = () -> { return 42; };")));
}
+
+ @Test
+ public void lambdaWithInferredArgumentsAndBlockBodyIsReadAsAnonymousClassCreation() {
+ assertEquals(
+ readClasses(generateMethodSource("void",
+ "java.util.function.Function<Integer, Integer> function = x -> x;")),
+ readClasses(generateMethodSource("void",
+ "java.util.function.Function<Integer, Integer> function = (Integer x) -> x;")));
+ }
@Test
public void argumentIsBoxedIfNecessary() {