Merge branch '2.7.x'

Closes gh-33263
This commit is contained in:
Andy Wilkinson 2022-11-18 15:56:30 +00:00
commit 5dc589e7ae
2 changed files with 12 additions and 2 deletions

View File

@ -25,6 +25,7 @@ import java.util.function.Consumer;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.boot.ApplicationContextFactory; import org.springframework.boot.ApplicationContextFactory;
import org.springframework.boot.Banner;
import org.springframework.boot.ConfigurableBootstrapContext; import org.springframework.boot.ConfigurableBootstrapContext;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.SpringApplication.AbandonedRunException; import org.springframework.boot.SpringApplication.AbandonedRunException;
@ -195,6 +196,9 @@ public class SpringBootContextLoader extends AbstractContextLoader implements Ao
} }
application.setApplicationContextFactory( application.setApplicationContextFactory(
(webApplicationType) -> getApplicationContextFactory(mergedConfig, webApplicationType)); (webApplicationType) -> getApplicationContextFactory(mergedConfig, webApplicationType));
if (mergedConfig.getParent() != null) {
application.setBannerMode(Banner.Mode.OFF);
}
application.setInitializers(initializers); application.setInitializers(initializers);
ConfigurableEnvironment environment = getEnvironment(); ConfigurableEnvironment environment = getEnvironment();
if (environment != null) { if (environment != null) {

View File

@ -17,14 +17,19 @@
package org.springframework.boot.test.context; package org.springframework.boot.test.context;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.boot.test.context.SpringBootTestContextHierarchyTests.ChildConfiguration; import org.springframework.boot.test.context.SpringBootTestContextHierarchyTests.ChildConfiguration;
import org.springframework.boot.test.context.SpringBootTestContextHierarchyTests.ParentConfiguration; import org.springframework.boot.test.context.SpringBootTestContextHierarchyTests.ParentConfiguration;
import org.springframework.boot.test.system.CapturedOutput;
import org.springframework.boot.test.system.OutputCaptureExtension;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.ContextHierarchy; import org.springframework.test.context.ContextHierarchy;
import static org.assertj.core.api.Assertions.assertThat;
/** /**
* Tests for {@link SpringBootTest @SpringBootTest} and * Tests for {@link SpringBootTest @SpringBootTest} and
* {@link ContextHierarchy @ContextHierarchy}. * {@link ContextHierarchy @ContextHierarchy}.
@ -34,11 +39,12 @@ import org.springframework.test.context.ContextHierarchy;
@SpringBootTest @SpringBootTest
@ContextHierarchy({ @ContextConfiguration(classes = ParentConfiguration.class), @ContextHierarchy({ @ContextConfiguration(classes = ParentConfiguration.class),
@ContextConfiguration(classes = ChildConfiguration.class) }) @ContextConfiguration(classes = ChildConfiguration.class) })
@ExtendWith(OutputCaptureExtension.class)
class SpringBootTestContextHierarchyTests { class SpringBootTestContextHierarchyTests {
@Test @Test
void contextLoads() { void contextLoads(CapturedOutput capturedOutput) {
assertThat(capturedOutput).containsOnlyOnce(":: Spring Boot ::");
} }
@Configuration(proxyBeanMethods = false) @Configuration(proxyBeanMethods = false)