ApplicationAvailabilityAutoConfigurationTests Class — spring-boot Architecture
Architecture documentation for the ApplicationAvailabilityAutoConfigurationTests class in ApplicationAvailabilityAutoConfigurationTests.java from the spring-boot codebase.
Entity Profile
Relationship Graph
Source Code
core/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/availability/ApplicationAvailabilityAutoConfigurationTests.java lines 37–66
class ApplicationAvailabilityAutoConfigurationTests {
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
.withConfiguration(AutoConfigurations.of(ApplicationAvailabilityAutoConfiguration.class));
@Test
void providerIsPresentWhenNotRegistered() {
this.contextRunner.run(((context) -> assertThat(context).hasSingleBean(ApplicationAvailability.class)
.hasBean("applicationAvailability")));
}
@Test
void providerIsNotConfiguredWhenCustomOneIsPresent() {
this.contextRunner
.withBean("customApplicationAvailability", ApplicationAvailability.class,
() -> mock(ApplicationAvailability.class))
.run(((context) -> assertThat(context).hasSingleBean(ApplicationAvailability.class)
.hasBean("customApplicationAvailability")));
}
@Test
void whenLazyInitializationIsEnabledApplicationAvailabilityBeanShouldStillReceiveAvailabilityChangeEvents() {
this.contextRunner.withBean(LazyInitializationBeanFactoryPostProcessor.class).run((context) -> {
AvailabilityChangeEvent.publish(context, ReadinessState.ACCEPTING_TRAFFIC);
ApplicationAvailability applicationAvailability = context.getBean(ApplicationAvailability.class);
assertThat(applicationAvailability.getLastChangeEvent(ReadinessState.class)).isNotNull();
});
}
}
Domain
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free