use of org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ConfigurationPropertiesBeanDescriptor in project spring-boot by spring-projects.
the class ConfigurationPropertiesReportEndpointSerializationTests method testInitializedMapAndList.
@Test
@SuppressWarnings("unchecked")
void testInitializedMapAndList() {
ApplicationContextRunner contextRunner = new ApplicationContextRunner().withUserConfiguration(InitializedMapAndListPropertiesConfig.class).withPropertyValues("foo.map.entryOne:true", "foo.list[0]:abc");
contextRunner.run((context) -> {
ConfigurationPropertiesReportEndpoint endpoint = context.getBean(ConfigurationPropertiesReportEndpoint.class);
ApplicationConfigurationProperties applicationProperties = endpoint.configurationProperties();
ConfigurationPropertiesBeanDescriptor foo = applicationProperties.getContexts().get(context.getId()).getBeans().get("foo");
assertThat(foo.getPrefix()).isEqualTo("foo");
Map<String, Object> propertiesMap = foo.getProperties();
assertThat(propertiesMap).containsOnlyKeys("bar", "name", "map", "list");
Map<String, Object> map = (Map<String, Object>) propertiesMap.get("map");
assertThat(map).containsOnly(entry("entryOne", true));
List<String> list = (List<String>) propertiesMap.get("list");
assertThat(list).containsExactly("abc");
});
}
use of org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ConfigurationPropertiesBeanDescriptor in project spring-boot by spring-projects.
the class ConfigurationPropertiesReportEndpointSerializationTests method testNaming.
@Test
void testNaming() {
ApplicationContextRunner contextRunner = new ApplicationContextRunner().withUserConfiguration(FooConfig.class).withPropertyValues("foo.name:foo");
contextRunner.run((context) -> {
ConfigurationPropertiesReportEndpoint endpoint = context.getBean(ConfigurationPropertiesReportEndpoint.class);
ApplicationConfigurationProperties applicationProperties = endpoint.configurationProperties();
ConfigurationPropertiesBeanDescriptor foo = applicationProperties.getContexts().get(context.getId()).getBeans().get("foo");
assertThat(foo).isNotNull();
assertThat(foo.getPrefix()).isEqualTo("foo");
Map<String, Object> map = foo.getProperties();
assertThat(map).isNotNull();
assertThat(map).hasSize(2);
assertThat(map.get("name")).isEqualTo("foo");
});
}
use of org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ConfigurationPropertiesBeanDescriptor in project spring-boot by spring-projects.
the class ConfigurationPropertiesReportEndpointProxyTests method testWithProxyClass.
@Test
void testWithProxyClass() {
ApplicationContextRunner contextRunner = new ApplicationContextRunner().withUserConfiguration(Config.class, SqlExecutor.class);
contextRunner.run((context) -> {
ApplicationConfigurationProperties applicationProperties = context.getBean(ConfigurationPropertiesReportEndpoint.class).configurationProperties();
assertThat(applicationProperties.getContexts().get(context.getId()).getBeans().values().stream().map(ConfigurationPropertiesBeanDescriptor::getPrefix).filter("executor.sql"::equals).findFirst()).isNotEmpty();
});
}
use of org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ConfigurationPropertiesBeanDescriptor in project spring-boot by spring-projects.
the class ConfigurationPropertiesReportEndpointProxyTests method proxiedConstructorBoundPropertiesShouldBeAvailableInReport.
@Test
void proxiedConstructorBoundPropertiesShouldBeAvailableInReport() {
ApplicationContextRunner contextRunner = new ApplicationContextRunner().withUserConfiguration(ValidatedConfiguration.class).withPropertyValues("validated.name=baz");
contextRunner.run((context) -> {
ApplicationConfigurationProperties applicationProperties = context.getBean(ConfigurationPropertiesReportEndpoint.class).configurationProperties();
Map<String, Object> properties = applicationProperties.getContexts().get(context.getId()).getBeans().values().stream().map(ConfigurationPropertiesBeanDescriptor::getProperties).findFirst().get();
assertThat(properties.get("name")).isEqualTo("baz");
});
}
use of org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ConfigurationPropertiesBeanDescriptor in project spring-boot by spring-projects.
the class ConfigurationPropertiesReportEndpointSerializationTests method testSelfReferentialProperty.
@Test
@SuppressWarnings("unchecked")
void testSelfReferentialProperty() {
ApplicationContextRunner contextRunner = new ApplicationContextRunner().withUserConfiguration(SelfReferentialConfig.class).withPropertyValues("foo.name:foo");
contextRunner.run((context) -> {
ConfigurationPropertiesReportEndpoint endpoint = context.getBean(ConfigurationPropertiesReportEndpoint.class);
ApplicationConfigurationProperties applicationProperties = endpoint.configurationProperties();
ConfigurationPropertiesBeanDescriptor foo = applicationProperties.getContexts().get(context.getId()).getBeans().get("foo");
assertThat(foo.getPrefix()).isEqualTo("foo");
Map<String, Object> map = foo.getProperties();
assertThat(map).isNotNull();
assertThat(map).containsOnlyKeys("bar", "name");
assertThat(map).containsEntry("name", "foo");
Map<String, Object> bar = (Map<String, Object>) map.get("bar");
assertThat(bar).containsOnlyKeys("name");
assertThat(bar).containsEntry("name", "123456");
});
}
Aggregations