diff --git a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/OverrideAutoConfigurationContextCustomizerFactory.java b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/OverrideAutoConfigurationContextCustomizerFactory.java index 887847d77e2a..cd66fcbd6127 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/OverrideAutoConfigurationContextCustomizerFactory.java +++ b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/OverrideAutoConfigurationContextCustomizerFactory.java @@ -26,7 +26,6 @@ import org.springframework.test.context.ContextCustomizerFactory; import org.springframework.test.context.MergedContextConfiguration; import org.springframework.test.context.TestContextAnnotationUtils; -import org.springframework.test.context.TestContextAnnotationUtils.AnnotationDescriptor; /** * {@link ContextCustomizerFactory} to support @@ -39,9 +38,9 @@ class OverrideAutoConfigurationContextCustomizerFactory implements ContextCustom @Override public ContextCustomizer createContextCustomizer(Class testClass, List configurationAttributes) { - AnnotationDescriptor descriptor = TestContextAnnotationUtils - .findAnnotationDescriptor(testClass, OverrideAutoConfiguration.class); - boolean enabled = (descriptor != null) ? descriptor.getAnnotation().enabled() : true; + OverrideAutoConfiguration overrideAutoConfiguration = TestContextAnnotationUtils.findMergedAnnotation(testClass, + OverrideAutoConfiguration.class); + boolean enabled = (overrideAutoConfiguration != null) ? overrideAutoConfiguration.enabled() : true; return !enabled ? new DisableAutoConfigurationContextCustomizer() : null; } diff --git a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/actuate/metrics/MetricsExportContextCustomizerFactory.java b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/actuate/metrics/MetricsExportContextCustomizerFactory.java index 1ca75685485a..01cf079e9bf9 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/actuate/metrics/MetricsExportContextCustomizerFactory.java +++ b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/actuate/metrics/MetricsExportContextCustomizerFactory.java @@ -37,7 +37,7 @@ class MetricsExportContextCustomizerFactory implements ContextCustomizerFactory @Override public ContextCustomizer createContextCustomizer(Class testClass, List configAttributes) { - boolean disableMetricsExport = TestContextAnnotationUtils.findAnnotationDescriptor(testClass, + boolean disableMetricsExport = TestContextAnnotationUtils.findMergedAnnotation(testClass, AutoConfigureMetrics.class) == null; return disableMetricsExport ? new DisableMetricExportContextCustomizer() : null; } diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestContextBootstrapper.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestContextBootstrapper.java index 69e0bd7c3598..a6f0eef506ce 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestContextBootstrapper.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestContextBootstrapper.java @@ -47,7 +47,6 @@ import org.springframework.test.context.MergedContextConfiguration; import org.springframework.test.context.TestContext; import org.springframework.test.context.TestContextAnnotationUtils; -import org.springframework.test.context.TestContextAnnotationUtils.AnnotationDescriptor; import org.springframework.test.context.TestContextBootstrapper; import org.springframework.test.context.TestExecutionListener; import org.springframework.test.context.support.DefaultTestContextBootstrapper; @@ -320,12 +319,7 @@ protected String[] getProperties(Class testClass) { } protected SpringBootTest getAnnotation(Class testClass) { - AnnotationDescriptor descriptor = TestContextAnnotationUtils.findAnnotationDescriptor(testClass, - SpringBootTest.class); - if (descriptor != null) { - return descriptor.getAnnotation(); - } - return null; + return TestContextAnnotationUtils.findMergedAnnotation(testClass, SpringBootTest.class); } protected void verifyConfiguration(Class testClass) { diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestWebEnvironment.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestWebEnvironment.java index 286c25ceaeeb..39d91fdebf45 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestWebEnvironment.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/context/SpringBootTestWebEnvironment.java @@ -21,7 +21,6 @@ import org.springframework.test.context.ContextCustomizer; import org.springframework.test.context.MergedContextConfiguration; import org.springframework.test.context.TestContextAnnotationUtils; -import org.springframework.test.context.TestContextAnnotationUtils.AnnotationDescriptor; /** * {@link ContextCustomizer} to track the web environment that is used in a @@ -36,9 +35,9 @@ class SpringBootTestWebEnvironment implements ContextCustomizer { private final WebEnvironment webEnvironment; SpringBootTestWebEnvironment(Class testClass) { - AnnotationDescriptor descriptor = TestContextAnnotationUtils.findAnnotationDescriptor(testClass, + SpringBootTest sprintBootTest = TestContextAnnotationUtils.findMergedAnnotation(testClass, SpringBootTest.class); - this.webEnvironment = (descriptor != null) ? descriptor.getAnnotation().webEnvironment() : null; + this.webEnvironment = (sprintBootTest != null) ? sprintBootTest.webEnvironment() : null; } @Override diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizer.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizer.java index 015daacad155..6c64f0fcceca 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizer.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizer.java @@ -40,7 +40,6 @@ import org.springframework.test.context.ContextCustomizer; import org.springframework.test.context.MergedContextConfiguration; import org.springframework.test.context.TestContextAnnotationUtils; -import org.springframework.test.context.TestContextAnnotationUtils.AnnotationDescriptor; /** * {@link ContextCustomizer} for {@link TestRestTemplate}. @@ -53,9 +52,9 @@ class TestRestTemplateContextCustomizer implements ContextCustomizer { @Override public void customizeContext(ConfigurableApplicationContext context, MergedContextConfiguration mergedContextConfiguration) { - AnnotationDescriptor springBootTest = TestContextAnnotationUtils - .findAnnotationDescriptor(mergedContextConfiguration.getTestClass(), SpringBootTest.class); - if (springBootTest.getAnnotation().webEnvironment().isEmbedded()) { + SpringBootTest springBootTest = TestContextAnnotationUtils + .findMergedAnnotation(mergedContextConfiguration.getTestClass(), SpringBootTest.class); + if (springBootTest.webEnvironment().isEmbedded()) { registerTestRestTemplate(context); } } diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizerFactory.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizerFactory.java index c06d6905d9a5..60b8d2ce2b15 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizerFactory.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/client/TestRestTemplateContextCustomizerFactory.java @@ -23,7 +23,6 @@ import org.springframework.test.context.ContextCustomizer; import org.springframework.test.context.ContextCustomizerFactory; import org.springframework.test.context.TestContextAnnotationUtils; -import org.springframework.test.context.TestContextAnnotationUtils.AnnotationDescriptor; /** * {@link ContextCustomizerFactory} for {@link TestRestTemplate}. @@ -36,12 +35,9 @@ class TestRestTemplateContextCustomizerFactory implements ContextCustomizerFacto @Override public ContextCustomizer createContextCustomizer(Class testClass, List configAttributes) { - AnnotationDescriptor springBootTest = TestContextAnnotationUtils - .findAnnotationDescriptor(testClass, SpringBootTest.class); - if (springBootTest != null) { - return new TestRestTemplateContextCustomizer(); - } - return null; + SpringBootTest springBootTest = TestContextAnnotationUtils.findMergedAnnotation(testClass, + SpringBootTest.class); + return (springBootTest != null) ? new TestRestTemplateContextCustomizer() : null; } } diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizer.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizer.java index 0f5f08214d59..9b2d024fb749 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizer.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizer.java @@ -41,7 +41,6 @@ import org.springframework.test.context.ContextCustomizer; import org.springframework.test.context.MergedContextConfiguration; import org.springframework.test.context.TestContextAnnotationUtils; -import org.springframework.test.context.TestContextAnnotationUtils.AnnotationDescriptor; import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.util.CollectionUtils; import org.springframework.web.reactive.function.client.ExchangeStrategies; @@ -55,9 +54,9 @@ class WebTestClientContextCustomizer implements ContextCustomizer { @Override public void customizeContext(ConfigurableApplicationContext context, MergedContextConfiguration mergedConfig) { - AnnotationDescriptor springBootTest = TestContextAnnotationUtils - .findAnnotationDescriptor(mergedConfig.getTestClass(), SpringBootTest.class); - if (springBootTest.getAnnotation().webEnvironment().isEmbedded()) { + SpringBootTest springBootTest = TestContextAnnotationUtils.findMergedAnnotation(mergedConfig.getTestClass(), + SpringBootTest.class); + if (springBootTest.webEnvironment().isEmbedded()) { registerWebTestClient(context); } } diff --git a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizerFactory.java b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizerFactory.java index 45d3ddee21ae..b8d4216640c7 100644 --- a/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizerFactory.java +++ b/spring-boot-project/spring-boot-test/src/main/java/org/springframework/boot/test/web/reactive/server/WebTestClientContextCustomizerFactory.java @@ -23,7 +23,6 @@ import org.springframework.test.context.ContextCustomizer; import org.springframework.test.context.ContextCustomizerFactory; import org.springframework.test.context.TestContextAnnotationUtils; -import org.springframework.test.context.TestContextAnnotationUtils.AnnotationDescriptor; import org.springframework.util.ClassUtils; /** @@ -38,12 +37,9 @@ class WebTestClientContextCustomizerFactory implements ContextCustomizerFactory @Override public ContextCustomizer createContextCustomizer(Class testClass, List configAttributes) { - AnnotationDescriptor springBootTest = TestContextAnnotationUtils - .findAnnotationDescriptor(testClass, SpringBootTest.class); - if (springBootTest != null) { - return new WebTestClientContextCustomizer(); - } - return null; + SpringBootTest springBootTest = TestContextAnnotationUtils.findMergedAnnotation(testClass, + SpringBootTest.class); + return (springBootTest != null) ? new WebTestClientContextCustomizer() : null; } private boolean isWebClientPresent() {