diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-11-24 20:54:45 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-11-24 20:54:45 +0000 |
| commit | f4d8c1f419ef9f88e4eb7ed255b5b19da7b49e60 (patch) | |
| tree | 74badae71f647e262f27a824a53175145cd091f7 /src/test | |
| parent | aa0995287d4474f18d2b63e2d0fb69773b981906 (diff) | |
Add hacktastic closures for lambdas (not anonymous classes)
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java | 11 | ||||
| -rw-r--r-- | src/test/resources/java/lambda-capture/com/example/Lambda.java | 10 |
2 files changed, 21 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java b/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java index cc0e5af..bd2fe8f 100644 --- a/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java +++ b/src/test/java/org/zwobble/couscous/tests/JavaToPythonTests.java @@ -102,6 +102,17 @@ public class JavaToPythonTests { "value", asList())); } + + @Test + public void lambdasWithCapture() throws Exception { + assertEquals( + value(42), + execTestProgram( + "lambda-capture", + TypeName.of("com.example.Lambda"), + "value", + asList(value(2)))); + } private PrimitiveValue execTestProgram( String directoryName, diff --git a/src/test/resources/java/lambda-capture/com/example/Lambda.java b/src/test/resources/java/lambda-capture/com/example/Lambda.java new file mode 100644 index 0000000..a292a4f --- /dev/null +++ b/src/test/resources/java/lambda-capture/com/example/Lambda.java @@ -0,0 +1,10 @@ +package com.example; + +import java.util.function.Function; + +public class Lambda { + public static int value(int factor) { + Function<Integer, Integer> function = value -> value * factor; + return function.apply(21); + } +} |
