SpringBootApplicationTests Class — spring-boot Architecture
Architecture documentation for the SpringBootApplicationTests class in SpringBootApplicationTests.java from the spring-boot codebase.
Entity Profile
Source Code
core/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/SpringBootApplicationTests.java lines 36–85
class SpringBootApplicationTests {
@Test
void proxyBeanMethodsIsEnabledByDefault() {
AnnotationAttributes attributes = AnnotatedElementUtils
.getMergedAnnotationAttributes(DefaultSpringBootApplication.class, Configuration.class);
assertThat(attributes).containsEntry("proxyBeanMethods", true);
}
@Test
void proxyBeanMethodsCanBeDisabled() {
AnnotationAttributes attributes = AnnotatedElementUtils
.getMergedAnnotationAttributes(NoBeanMethodProxyingSpringBootApplication.class, Configuration.class);
assertThat(attributes).containsEntry("proxyBeanMethods", false);
}
@Test
void nameGeneratorDefaultToBeanNameGenerator() {
AnnotationAttributes attributes = AnnotatedElementUtils
.getMergedAnnotationAttributes(DefaultSpringBootApplication.class, ComponentScan.class);
assertThat(attributes).containsEntry("nameGenerator", BeanNameGenerator.class);
}
@Test
void nameGeneratorCanBeSpecified() {
AnnotationAttributes attributes = AnnotatedElementUtils
.getMergedAnnotationAttributes(CustomNameGeneratorConfiguration.class, ComponentScan.class);
assertThat(attributes).containsEntry("nameGenerator", TestBeanNameGenerator.class);
}
@SpringBootApplication
static class DefaultSpringBootApplication {
}
@SpringBootApplication(proxyBeanMethods = false)
static class NoBeanMethodProxyingSpringBootApplication {
}
@SpringBootApplication(nameGenerator = TestBeanNameGenerator.class)
static class CustomNameGeneratorConfiguration {
}
static class TestBeanNameGenerator extends DefaultBeanNameGenerator {
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free