GH-595 - Invalid dependency into named interface now gets reported properly.

This commit is contained in:
Oliver Drotbohm
2024-05-16 12:34:28 +02:00
parent 2bf9f797ec
commit 3855479c7c
4 changed files with 60 additions and 2 deletions

View File

@@ -79,6 +79,17 @@ class NamedInterfacesUnitTests {
assertInterfaceContains(interfaces, NamedInterface.UNNAMED_NAME, RootType.class, Internal.class);
}
@Test // GH-595
void detectsNamedInterfacesATypeIsContainedIn() {
var javaPackage = TestUtils.getPackage(RootType.class);
var interfaces = NamedInterfaces.discoverNamedInterfaces(javaPackage);
assertThat(interfaces.getNamedInterfacesContaining(AdditionalSpiType.class))
.extracting(NamedInterface::getName)
.containsExactlyInAnyOrder("spi", "kpi");
}
private static void assertInterfaceContains(NamedInterfaces interfaces, String name, Class<?>... types) {
var classNames = Arrays.stream(types).map(Class::getName).toArray(String[]::new);