GH-587 - ModulithMetadata now exposes all base packages.

Previously, we had a variety of places calculating the overall packages to inspect for types. This is now all consolidated into the ModulithMetadata abstraction exposing them directly.
This commit is contained in:
Oliver Drotbohm
2024-05-20 17:23:47 +02:00
parent 04c1203f65
commit 21bd2cef75
7 changed files with 150 additions and 184 deletions

View File

@@ -38,7 +38,7 @@ class ModulithMetadataUnitTest {
.map(ModulithMetadata::of) //
.forEach(it -> {
assertThat(it.getAdditionalPackages()).containsExactly("com.acme.foo");
assertThat(it.getBasePackages()).containsExactly("org.springframework.modulith.core", "com.acme.foo");
assertThat(it.getSharedModuleNames()).containsExactly("shared.module");
assertThat(it.getSystemName()).hasValue("systemName");
assertThat(it.useFullyQualifiedModuleNames()).isTrue();
@@ -50,7 +50,7 @@ class ModulithMetadataUnitTest {
ModulithMetadata metadata = ModulithMetadata.of(SpringBootApplicationAnnotated.class);
assertThat(metadata.getAdditionalPackages()).isEmpty();
assertThat(metadata.getBasePackages()).contains("org.springframework.modulith.core");
assertThat(metadata.getSharedModuleNames()).isEmpty();
assertThat(metadata.getSystemName()).hasValue(SpringBootApplicationAnnotated.class.getSimpleName());
assertThat(metadata.useFullyQualifiedModuleNames()).isFalse();

View File

@@ -17,7 +17,6 @@ package org.springframework.modulith.core;
import static com.tngtech.archunit.core.domain.JavaClass.Predicates.*;
import java.util.List;
import java.util.function.Supplier;
import org.jmolecules.ddd.annotation.AggregateRoot;
@@ -80,7 +79,7 @@ class TestUtils {
}
public static ApplicationModules of(String basePackage, String... ignoredPackages) {
return of(ModulithMetadata.of(basePackage), basePackage, JavaClass.Predicates.resideInAnyPackage(ignoredPackages));
return of(ModulithMetadata.of(basePackage), JavaClass.Predicates.resideInAnyPackage(ignoredPackages));
}
public static ApplicationModule getApplicationModule(String packageName) {
@@ -99,9 +98,7 @@ class TestUtils {
.importPackages(packageName));
}
private static ApplicationModules of(ModulithMetadata metadata, String basePackage,
DescribedPredicate<JavaClass> ignores) {
return new ApplicationModules(metadata, List.of(basePackage), ignores, false,
new ImportOption.OnlyIncludeTests()) {};
private static ApplicationModules of(ModulithMetadata metadata, DescribedPredicate<JavaClass> ignores) {
return new ApplicationModules(metadata, ignores, false, new ImportOption.OnlyIncludeTests()) {};
}
}