Merge branch '2.1.x'

Closes gh-17408
pull/17411/head
Andy Wilkinson 5 years ago
commit 0b8247bd62

@ -33,7 +33,7 @@ import org.springframework.context.annotation.Configuration;
@ConditionalOnAvailableEndpoint(endpoint = ShutdownEndpoint.class) @ConditionalOnAvailableEndpoint(endpoint = ShutdownEndpoint.class)
public class ShutdownEndpointAutoConfiguration { public class ShutdownEndpointAutoConfiguration {
@Bean @Bean(destroyMethod = "")
@ConditionalOnMissingBean @ConditionalOnMissingBean
public ShutdownEndpoint shutdownEndpoint() { public ShutdownEndpoint shutdownEndpoint() {
return new ShutdownEndpoint(); return new ShutdownEndpoint();

@ -16,11 +16,15 @@
package org.springframework.boot.actuate.autoconfigure.context; package org.springframework.boot.actuate.autoconfigure.context;
import java.util.Map;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.boot.actuate.context.ShutdownEndpoint; import org.springframework.boot.actuate.context.ShutdownEndpoint;
import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.boot.test.context.runner.ApplicationContextRunner;
import org.springframework.test.util.ReflectionTestUtils;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@ -35,10 +39,15 @@ class ShutdownEndpointAutoConfigurationTests {
.withConfiguration(AutoConfigurations.of(ShutdownEndpointAutoConfiguration.class)); .withConfiguration(AutoConfigurations.of(ShutdownEndpointAutoConfiguration.class));
@Test @Test
void runShouldHaveEndpointBean() { void runShouldHaveEndpointBeanThatIsNotDisposable() {
this.contextRunner.withPropertyValues("management.endpoint.shutdown.enabled:true") this.contextRunner.withPropertyValues("management.endpoint.shutdown.enabled:true")
.withPropertyValues("management.endpoints.web.exposure.include=shutdown") .withPropertyValues("management.endpoints.web.exposure.include=shutdown").run((context) -> {
.run((context) -> assertThat(context).hasSingleBean(ShutdownEndpoint.class)); assertThat(context).hasSingleBean(ShutdownEndpoint.class);
ConfigurableListableBeanFactory beanFactory = context.getBeanFactory();
Map<String, Object> disposableBeans = (Map<String, Object>) ReflectionTestUtils
.getField(beanFactory, "disposableBeans");
assertThat(disposableBeans).isEmpty();
});
} }
@Test @Test

Loading…
Cancel
Save