DelegatingLoggingSystemFactoryTests Class — spring-boot Architecture
Architecture documentation for the DelegatingLoggingSystemFactoryTests class in DelegatingLoggingSystemFactoryTests.java from the spring-boot codebase.
Entity Profile
Source Code
core/spring-boot/src/test/java/org/springframework/boot/logging/DelegatingLoggingSystemFactoryTests.java lines 34–65
class DelegatingLoggingSystemFactoryTests {
private final ClassLoader classLoader = getClass().getClassLoader();
@Test
void getLoggingSystemWhenDelegatesFunctionIsNullReturnsNull() {
DelegatingLoggingSystemFactory factory = new DelegatingLoggingSystemFactory(null);
assertThat(factory.getLoggingSystem(this.classLoader)).isNull();
}
@Test
void getLoggingSystemWhenDelegatesFunctionReturnsNullReturnsNull() {
DelegatingLoggingSystemFactory factory = new DelegatingLoggingSystemFactory((cl) -> null);
assertThat(factory.getLoggingSystem(this.classLoader)).isNull();
}
@Test
void getLoggingSystemReturnsFirstNonNullLoggingSystem() {
List<LoggingSystemFactory> delegates = new ArrayList<>();
delegates.add(mock(LoggingSystemFactory.class));
delegates.add(mock(LoggingSystemFactory.class));
delegates.add(mock(LoggingSystemFactory.class));
LoggingSystem result = mock(LoggingSystem.class);
given(delegates.get(1).getLoggingSystem(this.classLoader)).willReturn(result);
DelegatingLoggingSystemFactory factory = new DelegatingLoggingSystemFactory((cl) -> delegates);
assertThat(factory.getLoggingSystem(this.classLoader)).isSameAs(result);
then(delegates.get(0)).should().getLoggingSystem(this.classLoader);
then(delegates.get(1)).should().getLoggingSystem(this.classLoader);
then(delegates.get(2)).shouldHaveNoInteractions();
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free