aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/org/zwobble/couscous/backends/csharp/CsharpBackend.java10
-rw-r--r--src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpMethodRunner.java2
-rw-r--r--src/test/java/org/zwobble/couscous/tests/backends/csharp/JavaToCsharpTests.java2
3 files changed, 7 insertions, 7 deletions
diff --git a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpBackend.java b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpBackend.java
index 7785ec5..380d84f 100644
--- a/src/main/java/org/zwobble/couscous/backends/csharp/CsharpBackend.java
+++ b/src/main/java/org/zwobble/couscous/backends/csharp/CsharpBackend.java
@@ -24,19 +24,19 @@ public class CsharpBackend implements Backend {
"java/lang/Iterable.cs",
"java/util/Iterator.cs");
- private final Path directoryPath;
+ private final Path outputFilePath;
private final String namespace;
- public CsharpBackend(Path directoryPath, String namespace) {
- this.directoryPath = directoryPath;
+ public CsharpBackend(Path outputFilePath, String namespace) {
+ this.outputFilePath = outputFilePath;
this.namespace = namespace;
}
@Override
public void compile(List<TypeNode> classes) throws IOException {
- directoryPath.toFile().mkdirs();
+ outputFilePath.getParent().toFile().mkdirs();
Files.write(
- directoryPath.resolve("Program.cs"),
+ outputFilePath,
Iterables.<String>concat(
transform(
classes,
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 88c8285..b9249aa 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
@@ -39,7 +39,7 @@ public class CsharpMethodRunner implements MethodRunner {
public PrimitiveValue runMethod(List<TypeNode> classNodes, ScalarType className, String methodName, List<PrimitiveValue> arguments, Type returnType) {
try {
Path directoryPath = Files.createTempDirectory(null);
- Backend compiler = new CsharpBackend(directoryPath, NAMESPACE);
+ Backend compiler = new CsharpBackend(directoryPath.resolve("Program.cs"), NAMESPACE);
try {
compiler.compile(classNodes);
return runFunction(directoryPath, className, methodName, arguments, returnType);
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
index bda974e..356b712 100644
--- a/src/test/java/org/zwobble/couscous/tests/backends/csharp/JavaToCsharpTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/backends/csharp/JavaToCsharpTests.java
@@ -27,7 +27,7 @@ public class JavaToCsharpTests extends CompilerTests {
try {
CouscousCompiler compiler = new CouscousCompiler(
new JavaFrontend(),
- new CsharpBackend(directoryPath, CsharpMethodRunner.NAMESPACE));
+ new CsharpBackend(directoryPath.resolve("Program.cs"), CsharpMethodRunner.NAMESPACE));
compiler.compileDirectory(list(directory), directory);
return CsharpMethodRunner.runFunction(directoryPath, type, methodName, arguments, returnType);
} finally {