aboutsummaryrefslogtreecommitdiff
path: root/src/test/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-03-31 14:51:20 +0100
committerMichael Williamson <mike@zwobble.org>2016-03-31 14:51:20 +0100
commit1d3f9768d5db906b4ba6e3c77345e4af4adddcd2 (patch)
tree47afa24e00a466a11cec8e32bea98b687793f1c8 /src/test/java
parentfaa90ead17943487a1f126d4403d5f1399fcd898 (diff)
Add array serialisation to C# backend
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java13
1 files changed, 13 insertions, 0 deletions
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 5c1044d..51cbeae 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
@@ -8,6 +8,7 @@ import org.zwobble.couscous.tests.TestIds;
import org.zwobble.couscous.types.Types;
import static org.junit.Assert.assertEquals;
+import static org.zwobble.couscous.ast.ArrayNode.array;
import static org.zwobble.couscous.ast.AssignmentNode.assign;
import static org.zwobble.couscous.ast.ConstructorCallNode.constructorCall;
import static org.zwobble.couscous.ast.ExpressionStatementNode.expressionStatement;
@@ -68,6 +69,18 @@ public class CsharpSerializerTests {
}
@Test
+ public void emptyArraySpecifiesTypeOfArray() {
+ String output = serialize(array(ScalarType.of("X"), list()));
+ assertEquals("new X[] {}", output);
+ }
+
+ @Test
+ public void arrayElementsAreSeparatedByComma() {
+ String output = serialize(array(ScalarType.of("X"), list(literal(1), literal(2))));
+ assertEquals("new X[] {1, 2}", output);
+ }
+
+ @Test
public void assignmentSeparatesTargetAndValueWithEqualsSign() {
String output = serialize(assign(
reference(var(TestIds.ANY_ID, "x", Types.BOOLEAN)),