diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-04-10 20:50:37 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-04-10 20:50:37 +0100 |
| commit | 58de7ebb1744bc77f48c1f64645e3a611d1280ac (patch) | |
| tree | ca0d412cb6be27d4055e16e009f882e8bae61b88 /src/test/java/org/zwobble | |
| parent | 0dde3d8022966762c090687b6945c496eb8a168c (diff) | |
Write type parameters for interface methods
Diffstat (limited to 'src/test/java/org/zwobble')
| -rw-r--r-- | src/test/java/org/zwobble/couscous/tests/backends/csharp/CsharpSerializerTests.java | 17 |
1 files changed, 17 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 991ec79..d7cce40 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 @@ -492,6 +492,23 @@ public class CsharpSerializerTests { } @Test + public void interfaceWithMethodWithTypeParameters() { + MethodNode method = MethodNode.staticMethod("nothing") + .typeParameter(formalTypeParameter(Identifiers.method(Identifiers.forType("com.Example.example"), "nothing"), "T")) + .typeParameter(formalTypeParameter(Identifiers.method(Identifiers.forType("com.Example.example"), "nothing"), "U")) + .returns(ScalarType.of("void")) + .build(); + + Node node = new ClassNodeBuilder(ScalarType.of("com.example.Example")) + .method(method) + .buildInterface(); + + String output = serialize(node); + + assertEquals("namespace com.example {\n internal interface Example {\n void nothing<T, U>();\n }\n}\n", output); + } + + @Test public void enumWithSimpleValues() { Node node = declareEnum(ScalarType.of("com.example.Example"), list("ONE", "TWO")); |
