diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-02-06 13:26:37 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-02-06 13:26:37 +0000 |
| commit | aba89055c42fbef162b5c01e7fe4c53a8402e6bc (patch) | |
| tree | 0235e2973339fa1d4def1e2dde7bebc106747c1c /src/test/java/org/zwobble | |
| parent | 06e8060e71c96f28b45057b7c8ee8078552730da (diff) | |
Add JavaToCsharpTests with some tests disabled
Diffstat (limited to 'src/test/java/org/zwobble')
| -rw-r--r-- | src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpMethodRunner.java | 2 | ||||
| -rw-r--r-- | src/test/java/org/zwobble/couscous/tests/backends/csharp/JavaToCsharpTests.java | 83 |
2 files changed, 84 insertions, 1 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpMethodRunner.java b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpMethodRunner.java index 90f5a2a..651e50b 100644 --- a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpMethodRunner.java +++ b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpMethodRunner.java @@ -53,7 +53,7 @@ public class CsharpMethodRunner implements MethodRunner { } } - private static PrimitiveValue runFunction( + public static PrimitiveValue runFunction( Path directoryPath, TypeName className, String methodName, diff --git a/src/test/java/org/zwobble/couscous/tests/backends/csharp/JavaToCsharpTests.java b/src/test/java/org/zwobble/couscous/tests/backends/csharp/JavaToCsharpTests.java new file mode 100644 index 0000000..aeaa6ad --- /dev/null +++ b/src/test/java/org/zwobble/couscous/tests/backends/csharp/JavaToCsharpTests.java @@ -0,0 +1,83 @@ +package org.zwobble.couscous.tests.backends.csharp; + +import org.junit.Ignore; +import org.junit.Test; +import org.zwobble.couscous.CouscousCompiler; +import org.zwobble.couscous.ast.TypeName; +import org.zwobble.couscous.backends.csharp.CsharpBackend; +import org.zwobble.couscous.frontends.java.JavaFrontend; +import org.zwobble.couscous.tests.CompilerTests; +import org.zwobble.couscous.values.PrimitiveValue; + +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.List; + +import static org.zwobble.couscous.tests.util.ExtraFiles.deleteRecursively; +import static org.zwobble.couscous.util.ExtraLists.list; + +public class JavaToCsharpTests extends CompilerTests { + @Test + @Ignore + public void integersCanBeAssignedToObjectVariable() { + } + + @Test + @Ignore + public void anonymousClassesWithoutCapture() throws Exception { + } + + @Test + @Ignore + public void anonymousClassesWithCapture() throws Exception { + } + + @Test + @Ignore + public void lambdasWithoutCapture() throws Exception { + } + + @Test + @Ignore + public void lambdasWithCapture() throws Exception { + } + + @Test + @Ignore + public void lambdasWithThisCapture() throws Exception { + } + + @Test + @Ignore + public void staticMethodOverloads() throws Exception { + } + + @Test + @Ignore + public void stringToLowerCase() throws Exception { + } + + @Test + @Ignore + public void stringEquals() throws Exception { + } + + protected PrimitiveValue execProgram( + Path directory, + TypeName type, + String methodName, + List<PrimitiveValue> arguments) throws IOException, InterruptedException + { + Path directoryPath = Files.createTempDirectory(null); + try { + CouscousCompiler compiler = new CouscousCompiler( + new JavaFrontend(), + new CsharpBackend(directoryPath, "Couscous")); + compiler.compileDirectory(list(directory), directory); + return CsharpMethodRunner.runFunction(directoryPath, type, methodName, arguments, false); + } finally { + deleteRecursively(directoryPath.toFile()); + } + } +} |
