From 73eaea82c0bfb5a97f2eca9ffb44f86dbed6473c Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Fri, 8 May 2026 10:06:34 +0100 Subject: Support List in java-types --- .../compiler/output/lang/java/JavaWriterTests.java | 29 ++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) (limited to 'src/test') diff --git a/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java b/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java index da0f26f..0f2313a 100644 --- a/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java +++ b/src/test/java/org/zwobble/hobgoblin/compiler/output/lang/java/JavaWriterTests.java @@ -79,8 +79,8 @@ public class JavaWriterTests { var java = new JavaInterfaceDeclaration( "Shape", List.of( - new JavaTypeRef(List.of("abc", "def"), "One"), - new JavaTypeRef(List.of("abc", "def"), "Two") + new JavaTypeRef(List.of("abc", "def"), "One", List.of()), + new JavaTypeRef(List.of("abc", "def"), "Two", List.of()) ) ); @@ -92,6 +92,31 @@ public class JavaWriterTests { )); } + @Test + public void typeRefWithoutArgsHasNoAngleBrackets() throws IOException { + var java = new JavaTypeRef(List.of("abc", "def"), "One", List.of()); + + var string = write(writer -> writer.writeTypeRef(java)); + + assertThat(string, equalTo("abc.def.One")); + } + + @Test + public void typeRefWithArgsHasAngleBrackets() throws IOException { + var java = new JavaTypeRef( + List.of("abc", "def"), + "One", + List.of( + new JavaTypeRef(List.of(), "Two", List.of()), + new JavaTypeRef(List.of(), "Three", List.of()) + ) + ); + + var string = write(writer -> writer.writeTypeRef(java)); + + assertThat(string, equalTo("abc.def.One")); + } + private String write(Write write) throws IOException { var stringWriter = new StringWriter(); var javaWriter = new JavaWriter(new CodeWriter(stringWriter)); -- cgit v1.2.3