aboutsummaryrefslogtreecommitdiff
path: root/src/test/java/org/zwobble
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/org/zwobble')
-rw-r--r--src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
index 454dda7..ca2869c 100644
--- a/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
+++ b/src/test/java/org/zwobble/couscous/tests/frontends/java/JavaReaderTests.java
@@ -8,6 +8,7 @@ import org.zwobble.couscous.values.StringValue;
import java.util.List;
+import static org.hamcrest.Matchers.contains;
import static org.hamcrest.Matchers.hasSize;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat;
@@ -313,6 +314,18 @@ public class JavaReaderTests {
}
@Test
+ public void canReadInterfaceWithSuperTypes() {
+ String source = "package com.example;" +
+ "public interface Example extends java.util.function.IntSupplier {}";
+ List<TypeNode> classes = readSource("com/example/Example.java", source);
+ assertThat(classes, hasSize(1));
+ InterfaceNode classNode = (InterfaceNode) classes.get(0);
+ assertEquals(TypeName.of("com.example.Example"), classNode.getName());
+ assertEquals(list(), classNode.getMethods());
+ assertThat(classNode.getSuperTypes(), contains(ObjectValues.OBJECT, TypeName.of("java.util.function.IntSupplier")));
+ }
+
+ @Test
public void canReadInterfaceWithMethod() {
String source = "package com.example;" +
"public interface Example {" +