Search in sources :

Example 31 with ApplicationContextRunner

use of org.springframework.boot.test.context.runner.ApplicationContextRunner in project spring-boot by spring-projects.

the class StartupEndpointTests method testStartupEndpoint.

private void testStartupEndpoint(ApplicationStartup applicationStartup, Consumer<StartupEndpoint> startupEndpoint) {
    ApplicationContextRunner contextRunner = new ApplicationContextRunner().withInitializer((context) -> context.setApplicationStartup(applicationStartup)).withUserConfiguration(EndpointConfiguration.class);
    contextRunner.run((context) -> {
        assertThat(context).hasSingleBean(StartupEndpoint.class);
        startupEndpoint.accept(context.getBean(StartupEndpoint.class));
    });
}
Also used : Consumer(java.util.function.Consumer) Test(org.junit.jupiter.api.Test) Configuration(org.springframework.context.annotation.Configuration) SpringBootVersion(org.springframework.boot.SpringBootVersion) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) BufferingApplicationStartup(org.springframework.boot.context.metrics.buffering.BufferingApplicationStartup) ApplicationContextRunner(org.springframework.boot.test.context.runner.ApplicationContextRunner) Bean(org.springframework.context.annotation.Bean) StartupResponse(org.springframework.boot.actuate.startup.StartupEndpoint.StartupResponse) ApplicationStartup(org.springframework.core.metrics.ApplicationStartup) ApplicationContextRunner(org.springframework.boot.test.context.runner.ApplicationContextRunner)

Example 32 with ApplicationContextRunner

use of org.springframework.boot.test.context.runner.ApplicationContextRunner in project spring-boot by spring-projects.

the class HazelcastHealthIndicatorTests method hazelcastUp.

@Test
void hazelcastUp() {
    new ApplicationContextRunner().withConfiguration(AutoConfigurations.of(HazelcastAutoConfiguration.class)).withPropertyValues("spring.hazelcast.config=hazelcast.xml").run((context) -> {
        HazelcastInstance hazelcast = context.getBean(HazelcastInstance.class);
        Health health = new HazelcastHealthIndicator(hazelcast).health();
        assertThat(health.getStatus()).isEqualTo(Status.UP);
        assertThat(health.getDetails()).containsOnlyKeys("name", "uuid").containsEntry("name", "actuator-hazelcast");
        assertThat(health.getDetails().get("uuid")).asString().isNotEmpty();
    });
}
Also used : HazelcastInstance(com.hazelcast.core.HazelcastInstance) Health(org.springframework.boot.actuate.health.Health) ApplicationContextRunner(org.springframework.boot.test.context.runner.ApplicationContextRunner) HazelcastAutoConfiguration(org.springframework.boot.autoconfigure.hazelcast.HazelcastAutoConfiguration) Test(org.junit.jupiter.api.Test)

Example 33 with ApplicationContextRunner

use of org.springframework.boot.test.context.runner.ApplicationContextRunner in project spring-boot by spring-projects.

the class IntegrationGraphEndpointAutoConfigurationTests method runWhenSpringIntegrationIsNotEnabledShouldNotHaveEndpointBean.

@Test
void runWhenSpringIntegrationIsNotEnabledShouldNotHaveEndpointBean() {
    ApplicationContextRunner noSpringIntegrationRunner = new ApplicationContextRunner().withConfiguration(AutoConfigurations.of(IntegrationGraphEndpointAutoConfiguration.class));
    noSpringIntegrationRunner.run((context) -> {
        assertThat(context).doesNotHaveBean(IntegrationGraphEndpoint.class);
        assertThat(context).doesNotHaveBean(IntegrationGraphServer.class);
    });
}
Also used : ApplicationContextRunner(org.springframework.boot.test.context.runner.ApplicationContextRunner) Test(org.junit.jupiter.api.Test)

Example 34 with ApplicationContextRunner

use of org.springframework.boot.test.context.runner.ApplicationContextRunner in project spring-boot by spring-projects.

the class ConfigurationPropertiesReportEndpointFilteringTests method filterByPrefixNoMatches.

@Test
void filterByPrefixNoMatches() {
    ApplicationContextRunner contextRunner = new ApplicationContextRunner().withUserConfiguration(Config.class).withPropertyValues("foo.primary.name:foo1", "foo.secondary.name:foo2", "only.bar.name:solo1");
    contextRunner.run((context) -> {
        ConfigurationPropertiesReportEndpoint endpoint = context.getBean(ConfigurationPropertiesReportEndpoint.class);
        ApplicationConfigurationProperties applicationProperties = endpoint.configurationPropertiesWithPrefix("foo.third");
        assertThat(applicationProperties.getContexts()).containsOnlyKeys(context.getId());
        ContextConfigurationProperties contextProperties = applicationProperties.getContexts().get(context.getId());
        assertThat(contextProperties.getBeans()).isEmpty();
    });
}
Also used : ContextConfigurationProperties(org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ContextConfigurationProperties) ApplicationConfigurationProperties(org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ApplicationConfigurationProperties) ApplicationContextRunner(org.springframework.boot.test.context.runner.ApplicationContextRunner) Test(org.junit.jupiter.api.Test)

Example 35 with ApplicationContextRunner

use of org.springframework.boot.test.context.runner.ApplicationContextRunner in project spring-boot by spring-projects.

the class ConfigurationPropertiesReportEndpointParentTests method configurationPropertiesClass.

@Test
void configurationPropertiesClass() {
    new ApplicationContextRunner().withUserConfiguration(Parent.class).run((parent) -> {
        new ApplicationContextRunner().withUserConfiguration(ClassConfigurationProperties.class).withParent(parent).run((child) -> {
            ConfigurationPropertiesReportEndpoint endpoint = child.getBean(ConfigurationPropertiesReportEndpoint.class);
            ApplicationConfigurationProperties applicationProperties = endpoint.configurationProperties();
            assertThat(applicationProperties.getContexts()).containsOnlyKeys(child.getId(), parent.getId());
            assertThat(applicationProperties.getContexts().get(child.getId()).getBeans().keySet()).containsExactly("someProperties");
            assertThat((applicationProperties.getContexts().get(parent.getId()).getBeans().keySet())).containsExactly("testProperties");
        });
    });
}
Also used : ApplicationConfigurationProperties(org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ApplicationConfigurationProperties) ApplicationContextRunner(org.springframework.boot.test.context.runner.ApplicationContextRunner) Test(org.junit.jupiter.api.Test)

Aggregations

ApplicationContextRunner (org.springframework.boot.test.context.runner.ApplicationContextRunner)53 Test (org.junit.jupiter.api.Test)49 ApplicationConfigurationProperties (org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ApplicationConfigurationProperties)21 ConfigurationPropertiesBeanDescriptor (org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ConfigurationPropertiesBeanDescriptor)16 Map (java.util.Map)7 MeterRegistry (io.micrometer.core.instrument.MeterRegistry)6 CompositeMeterRegistry (io.micrometer.core.instrument.composite.CompositeMeterRegistry)6 HashMap (java.util.HashMap)6 List (java.util.List)6 ArrayList (java.util.ArrayList)5 Assertions.assertThat (org.assertj.core.api.Assertions.assertThat)5 ContextConfigurationProperties (org.springframework.boot.actuate.context.properties.ConfigurationPropertiesReportEndpoint.ContextConfigurationProperties)5 Bean (org.springframework.context.annotation.Bean)5 Configuration (org.springframework.context.annotation.Configuration)5 SimpleMeterRegistry (io.micrometer.core.instrument.simple.SimpleMeterRegistry)4 GraphiteMeterRegistry (io.micrometer.graphite.GraphiteMeterRegistry)4 JmxMeterRegistry (io.micrometer.jmx.JmxMeterRegistry)4 ApplicationBeans (org.springframework.boot.actuate.beans.BeansEndpoint.ApplicationBeans)4 Test (org.junit.Test)3 ContextBeans (org.springframework.boot.actuate.beans.BeansEndpoint.ContextBeans)3