ResourceConditionTests Class — spring-boot Architecture
Architecture documentation for the ResourceConditionTests class in ResourceConditionTests.java from the spring-boot codebase.
Entity Profile
Source Code
core/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/condition/ResourceConditionTests.java lines 38–119
class ResourceConditionTests {
private @Nullable ConfigurableApplicationContext context;
@AfterEach
void tearDown() {
if (this.context != null) {
this.context.close();
}
}
@Test
@WithResource(name = "logging.properties")
void defaultResourceAndNoExplicitKey() {
load(DefaultLocationConfiguration.class);
assertThat(isContainsBean()).isTrue();
}
@Test
void unknownDefaultLocationAndNoExplicitKey() {
load(UnknownDefaultLocationConfiguration.class);
assertThat(isContainsBean()).isFalse();
}
@Test
void unknownDefaultLocationAndExplicitKeyToResource() {
load(UnknownDefaultLocationConfiguration.class, "spring.foo.test.config=logging.properties");
assertThat(isContainsBean()).isTrue();
}
private void load(Class<?> config, String... environment) {
AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext();
TestPropertyValues.of(environment).applyTo(applicationContext);
applicationContext.register(config);
applicationContext.refresh();
this.context = applicationContext;
}
private boolean isContainsBean() {
assertThat(this.context).isNotNull();
return this.context.containsBean("foo");
}
@Configuration(proxyBeanMethods = false)
@Conditional(DefaultLocationResourceCondition.class)
static class DefaultLocationConfiguration {
@Bean
String foo() {
return "foo";
}
}
@Configuration(proxyBeanMethods = false)
@Conditional(UnknownDefaultLocationResourceCondition.class)
static class UnknownDefaultLocationConfiguration {
@Bean
String foo() {
return "foo";
}
}
static class DefaultLocationResourceCondition extends ResourceCondition {
DefaultLocationResourceCondition() {
super("test", "spring.foo.test.config", "classpath:/logging.properties");
}
}
static class UnknownDefaultLocationResourceCondition extends ResourceCondition {
UnknownDefaultLocationResourceCondition() {
super("test", "spring.foo.test.config", "classpath:/this-file-does-not-exist.xml");
}
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free