diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-01-16 16:15:51 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-01-16 16:15:51 +0000 |
| commit | b332717af88b5b613d60ec72af820b696e7e2c7a (patch) | |
| tree | 058eee425567060eb456935711140aa6e232244b /src/test/java/org/zwobble/couscous/tests/backends/csharp | |
| parent | e886b0ddb09f1bc247858c3ff5405651c66f0ae8 (diff) | |
Add support for custom constructors
Diffstat (limited to 'src/test/java/org/zwobble/couscous/tests/backends/csharp')
| -rw-r--r-- | src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpCompilerEvalTests.java | 5 | ||||
| -rw-r--r-- | src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java | 15 |
2 files changed, 15 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 b8aa1b4..79c4a6d 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 @@ -45,11 +45,6 @@ public class CsharpCompilerEvalTests extends BackendEvalTests { public void canCallStaticMethodFromUserDefinedStaticMethod() { } - @Test - @Ignore - public void constructorIsExecutedOnConstruction() { - } - @Override protected PrimitiveValue evalExpression(List<ClassNode> classes, ExpressionNode expression) { return new CsharpMethodRunner().evalExpression(classes, expression); 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 30a6f2b..011fcd3 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 @@ -198,6 +198,21 @@ public class CsharpSerializerTests { } @Test + public void constructorHasSerializedBody() { + ConstructorNode constructor = ConstructorNode.constructor( + list(formalArg(var(TestIds.ANY_ID, "x", TypeName.of("X")))), + list(expressionStatement(literal(true)))); + ClassNode classNode = ClassNode.builder("com.example.Example") + .constructor(constructor) + .build(); + + String output = serialize(classNode); + + assertEquals( + "namespace Couscous.com.example {\n internal class Example {\n internal Example(Couscous.X x) {\n true;\n }\n }\n}\n", output); + } + + @Test public void classWithFields() { ClassNode classNode = ClassNode.builder("com.example.Example") .field("x", TypeName.of("X")) |
