aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpCompilerEvalTests.java5
-rw-r--r--src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java31
2 files changed, 31 insertions, 5 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpCompilerEvalTests.java b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpCompilerEvalTests.java
index 2348acf..b8aa1b4 100644
--- a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpCompilerEvalTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpCompilerEvalTests.java
@@ -47,11 +47,6 @@ public class CsharpCompilerEvalTests extends BackendEvalTests {
@Test
@Ignore
- public void canCallInstanceMethodWithArgumentsOnUserDefinedClass() {
- }
-
- @Test
- @Ignore
public void constructorIsExecutedOnConstruction() {
}
diff --git a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java
index 1139e3c..377712c 100644
--- a/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java
@@ -7,6 +7,7 @@ import org.zwobble.couscous.tests.TestIds;
import static org.junit.Assert.assertEquals;
import static org.zwobble.couscous.ast.ConstructorCallNode.constructorCall;
+import static org.zwobble.couscous.ast.FormalArgumentNode.formalArg;
import static org.zwobble.couscous.ast.LiteralNode.literal;
import static org.zwobble.couscous.ast.MethodCallNode.methodCall;
import static org.zwobble.couscous.ast.ReturnNode.returns;
@@ -66,6 +67,16 @@ public class CsharpSerializerTests {
}
@Test
+ public void methodCallWithArguments() {
+ String output = serialize(methodCall(
+ reference(var(TestIds.ANY_ID, "x", TypeName.of("X"))),
+ "y",
+ list(literal(1), literal(2)),
+ TypeName.of("Y")));
+ assertEquals("x.y(1, 2)", output);
+ }
+
+ @Test
public void constructorCallWithNoArguments() {
String output = serialize(constructorCall(
TypeName.of("X"),
@@ -74,6 +85,14 @@ public class CsharpSerializerTests {
}
@Test
+ public void constructorCallWithArguments() {
+ String output = serialize(constructorCall(
+ TypeName.of("X"),
+ list(literal(1), literal(2))));
+ assertEquals("new Couscous.X(1, 2)", output);
+ }
+
+ @Test
public void returnStatementUsesReturnStatement() {
String output = serialize(returns(literal(true)));
assertEquals("return true;", output);
@@ -92,6 +111,18 @@ public class CsharpSerializerTests {
}
@Test
+ public void methodWithArguments() {
+ MethodNode methodNode = MethodNode.staticMethod("nothing")
+ .argument(formalArg(var(TestIds.id("x"), "x", TypeName.of("X"))))
+ .argument(formalArg(var(TestIds.id("y"), "y", TypeName.of("Y"))))
+ .build();
+
+ String output = serialize(methodNode);
+
+ assertEquals("internal static dynamic nothing(dynamic x, dynamic y) {\n}\n", output);
+ }
+
+ @Test
public void methodHasSerializedBody() {
MethodNode method = MethodNode.staticMethod("nothing")
.statement(returns(literal(true)))