ConditionalOnRepositoryTypeTests Class — spring-boot Architecture
Architecture documentation for the ConditionalOnRepositoryTypeTests class in ConditionalOnRepositoryTypeTests.java from the spring-boot codebase.
Entity Profile
Source Code
core/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/data/ConditionalOnRepositoryTypeTests.java lines 31–122
class ConditionalOnRepositoryTypeTests {
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner();
@Test
void imperativeRepositoryMatchesWithNoConfiguredType() {
this.contextRunner.withUserConfiguration(ImperativeRepository.class)
.run((context) -> assertThat(context).hasSingleBean(ImperativeRepository.class));
}
@Test
void reactiveRepositoryMatchesWithNoConfiguredType() {
this.contextRunner.withUserConfiguration(ReactiveRepository.class)
.run((context) -> assertThat(context).hasSingleBean(ReactiveRepository.class));
}
@Test
void imperativeRepositoryMatchesWithAutoConfiguredType() {
this.contextRunner.withUserConfiguration(ImperativeRepository.class)
.withPropertyValues("spring.data.test.repositories.type:auto")
.run((context) -> assertThat(context).hasSingleBean(ImperativeRepository.class));
}
@Test
void reactiveRepositoryMatchesWithAutoConfiguredType() {
this.contextRunner.withUserConfiguration(ReactiveRepository.class)
.withPropertyValues("spring.data.test.repositories.type:auto")
.run((context) -> assertThat(context).hasSingleBean(ReactiveRepository.class));
}
@Test
void imperativeRepositoryMatchesWithImperativeConfiguredType() {
this.contextRunner.withUserConfiguration(ImperativeRepository.class)
.withPropertyValues("spring.data.test.repositories.type:imperative")
.run((context) -> assertThat(context).hasSingleBean(ImperativeRepository.class));
}
@Test
void reactiveRepositoryMatchesWithReactiveConfiguredType() {
this.contextRunner.withUserConfiguration(ReactiveRepository.class)
.withPropertyValues("spring.data.test.repositories.type:reactive")
.run((context) -> assertThat(context).hasSingleBean(ReactiveRepository.class));
}
@Test
void imperativeRepositoryDoesNotMatchWithReactiveConfiguredType() {
this.contextRunner.withUserConfiguration(ImperativeRepository.class)
.withPropertyValues("spring.data.test.repositories.type:reactive")
.run((context) -> assertThat(context).doesNotHaveBean(ImperativeRepository.class));
}
@Test
void reactiveRepositoryDoesNotMatchWithImperativeConfiguredType() {
this.contextRunner.withUserConfiguration(ReactiveRepository.class)
.withPropertyValues("spring.data.test.repositories.type:imperative")
.run((context) -> assertThat(context).doesNotHaveBean(ReactiveRepository.class));
}
@Test
void imperativeRepositoryDoesNotMatchWithNoneConfiguredType() {
this.contextRunner.withUserConfiguration(ImperativeRepository.class)
.withPropertyValues("spring.data.test.repositories.type:none")
.run((context) -> assertThat(context).doesNotHaveBean(ImperativeRepository.class));
}
@Test
void reactiveRepositoryDoesNotMatchWithNoneConfiguredType() {
this.contextRunner.withUserConfiguration(ReactiveRepository.class)
.withPropertyValues("spring.data.test.repositories.type:none")
.run((context) -> assertThat(context).doesNotHaveBean(ReactiveRepository.class));
}
@Test
void failsFastWhenConfiguredTypeIsUnknown() {
this.contextRunner.withUserConfiguration(ReactiveRepository.class)
.withPropertyValues("spring.data.test.repositories.type:abcde")
.run((context) -> assertThat(context).hasFailed());
}
@Configuration(proxyBeanMethods = false)
@ConditionalOnRepositoryType(store = "test", type = RepositoryType.IMPERATIVE)
static class ImperativeRepository {
}
@Configuration(proxyBeanMethods = false)
@ConditionalOnRepositoryType(store = "test", type = RepositoryType.REACTIVE)
static class ReactiveRepository {
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free