commit
366f7a85c9
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright 2012-2022 the original author or authors.
|
||||
* Copyright 2012-2023 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -17,6 +17,8 @@
|
|||
package org.springframework.boot.autoconfigure.availability;
|
||||
|
||||
import org.springframework.boot.autoconfigure.AutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.availability.ApplicationAvailability;
|
||||
import org.springframework.boot.availability.ApplicationAvailabilityBean;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
|
||||
|
@ -25,13 +27,15 @@ import org.springframework.context.annotation.Bean;
|
|||
* {@link ApplicationAvailabilityBean}.
|
||||
*
|
||||
* @author Brian Clozel
|
||||
* @author Taeik Lim
|
||||
* @since 2.3.0
|
||||
*/
|
||||
@AutoConfiguration
|
||||
public class ApplicationAvailabilityAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
public ApplicationAvailabilityBean applicationAvailability() {
|
||||
@ConditionalOnMissingBean
|
||||
public ApplicationAvailability applicationAvailability() {
|
||||
return new ApplicationAvailabilityBean();
|
||||
}
|
||||
|
||||
|
|
|
@ -14,21 +14,22 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.kubernetes;
|
||||
package org.springframework.boot.autoconfigure.availability;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurations;
|
||||
import org.springframework.boot.autoconfigure.availability.ApplicationAvailabilityAutoConfiguration;
|
||||
import org.springframework.boot.availability.ApplicationAvailability;
|
||||
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.mockito.Mockito.mock;
|
||||
|
||||
/**
|
||||
* Tests for {@link ApplicationAvailabilityAutoConfiguration}
|
||||
*
|
||||
* @author Brian Clozel
|
||||
* @author Taeik Lim
|
||||
*/
|
||||
class ApplicationAvailabilityAutoConfigurationTests {
|
||||
|
||||
|
@ -36,8 +37,18 @@ class ApplicationAvailabilityAutoConfigurationTests {
|
|||
.withConfiguration(AutoConfigurations.of(ApplicationAvailabilityAutoConfiguration.class));
|
||||
|
||||
@Test
|
||||
void providerIsPresent() {
|
||||
this.contextRunner.run(((context) -> assertThat(context).hasSingleBean(ApplicationAvailability.class)));
|
||||
void providerIsPresentWhenNotRegistered() {
|
||||
this.contextRunner.run(((context) -> assertThat(context).hasSingleBean(ApplicationAvailability.class)
|
||||
.hasBean("applicationAvailability")));
|
||||
}
|
||||
|
||||
@Test
|
||||
void providerIsNotConfiguredWhenCustomOneIsPresent() {
|
||||
this.contextRunner
|
||||
.withBean("customApplicationAvailability", ApplicationAvailability.class,
|
||||
() -> mock(ApplicationAvailability.class))
|
||||
.run(((context) -> assertThat(context).hasSingleBean(ApplicationAvailability.class)
|
||||
.hasBean("customApplicationAvailability")));
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue