Skip to content

Commit 0f0278e

Browse files
dreis2211philwebb
authored andcommitted
Migrate ModifiedClassPath tests to JUnit 5
Migrate the remaining JUnit 4 tests to JUnit 5, making use of the new `ModifiedClassPathExtension`. See gh-17491
1 parent 2a4c48c commit 0f0278e

File tree

38 files changed

+396
-411
lines changed

38 files changed

+396
-411
lines changed

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/Log4J2MetricsWithLog4jLoggerContextAutoConfigurationTests.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@
1818

1919
import io.micrometer.core.instrument.binder.logging.Log4j2Metrics;
2020
import org.apache.logging.log4j.LogManager;
21-
import org.junit.Test;
22-
import org.junit.runner.RunWith;
21+
import org.junit.jupiter.api.Test;
22+
import org.junit.jupiter.api.extension.ExtendWith;
2323

2424
import org.springframework.boot.actuate.autoconfigure.metrics.test.MetricsRun;
2525
import org.springframework.boot.autoconfigure.AutoConfigurations;
2626
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
2727
import org.springframework.boot.testsupport.runner.classpath.ClassPathOverrides;
28-
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathRunner;
28+
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathExtension;
2929
import org.springframework.context.annotation.Bean;
3030
import org.springframework.context.annotation.Configuration;
3131

@@ -36,22 +36,22 @@
3636
*
3737
* @author Andy Wilkinson
3838
*/
39-
@RunWith(ModifiedClassPathRunner.class)
39+
@ExtendWith(ModifiedClassPathExtension.class)
4040
@ClassPathOverrides("org.apache.logging.log4j:log4j-core:2.11.1")
41-
public class Log4J2MetricsWithLog4jLoggerContextAutoConfigurationTests {
41+
class Log4J2MetricsWithLog4jLoggerContextAutoConfigurationTests {
4242

4343
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner().with(MetricsRun.simple())
4444
.withConfiguration(AutoConfigurations.of(Log4J2MetricsAutoConfiguration.class));
4545

4646
@Test
47-
public void autoConfiguresLog4J2Metrics() {
47+
void autoConfiguresLog4J2Metrics() {
4848
assertThat(LogManager.getContext().getClass().getName())
4949
.isEqualTo("org.apache.logging.log4j.core.LoggerContext");
5050
this.contextRunner.run((context) -> assertThat(context).hasSingleBean(Log4j2Metrics.class));
5151
}
5252

5353
@Test
54-
public void allowsCustomLog4J2MetricsToBeUsed() {
54+
void allowsCustomLog4J2MetricsToBeUsed() {
5555
assertThat(LogManager.getContext().getClass().getName())
5656
.isEqualTo("org.apache.logging.log4j.core.LoggerContext");
5757
this.contextRunner.withUserConfiguration(CustomLog4J2MetricsConfiguration.class).run(

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/MetricsAutoConfigurationWithLog4j2AndLogbackTests.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@
1717
package org.springframework.boot.actuate.autoconfigure.metrics;
1818

1919
import io.micrometer.core.instrument.binder.logging.LogbackMetrics;
20-
import org.junit.Test;
21-
import org.junit.runner.RunWith;
20+
import org.junit.jupiter.api.Test;
21+
import org.junit.jupiter.api.extension.ExtendWith;
2222

2323
import org.springframework.boot.autoconfigure.AutoConfigurations;
2424
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
2525
import org.springframework.boot.testsupport.runner.classpath.ClassPathOverrides;
26-
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathRunner;
26+
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathExtension;
2727

2828
import static org.assertj.core.api.Assertions.assertThat;
2929

@@ -33,15 +33,15 @@
3333
*
3434
* @author Andy Wilkinson
3535
*/
36-
@RunWith(ModifiedClassPathRunner.class)
36+
@ExtendWith(ModifiedClassPathExtension.class)
3737
@ClassPathOverrides({ "org.apache.logging.log4j:log4j-core:2.9.0", "org.apache.logging.log4j:log4j-slf4j-impl:2.9.0" })
38-
public class MetricsAutoConfigurationWithLog4j2AndLogbackTests {
38+
class MetricsAutoConfigurationWithLog4j2AndLogbackTests {
3939

4040
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
4141
.withConfiguration(AutoConfigurations.of(MetricsAutoConfiguration.class));
4242

4343
@Test
44-
public void doesNotConfigureLogbackMetrics() {
44+
void doesNotConfigureLogbackMetrics() {
4545
this.contextRunner.run((context) -> assertThat(context).doesNotHaveBean(LogbackMetrics.class));
4646
}
4747

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/redis/RedisHealthIndicatorAutoConfigurationTests.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616

1717
package org.springframework.boot.actuate.autoconfigure.redis;
1818

19-
import org.junit.Test;
20-
import org.junit.runner.RunWith;
19+
import org.junit.jupiter.api.Test;
20+
import org.junit.jupiter.api.extension.ExtendWith;
2121

2222
import org.springframework.boot.actuate.autoconfigure.health.HealthIndicatorAutoConfiguration;
2323
import org.springframework.boot.actuate.health.ApplicationHealthIndicator;
@@ -27,7 +27,7 @@
2727
import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
2828
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
2929
import org.springframework.boot.testsupport.runner.classpath.ClassPathExclusions;
30-
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathRunner;
30+
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathExtension;
3131

3232
import static org.assertj.core.api.Assertions.assertThat;
3333

@@ -36,22 +36,22 @@
3636
*
3737
* @author Phillip Webb
3838
*/
39-
@RunWith(ModifiedClassPathRunner.class)
39+
@ExtendWith(ModifiedClassPathExtension.class)
4040
@ClassPathExclusions({ "reactor-core*.jar", "lettuce-core*.jar" })
41-
public class RedisHealthIndicatorAutoConfigurationTests {
41+
class RedisHealthIndicatorAutoConfigurationTests {
4242

4343
private ApplicationContextRunner contextRunner = new ApplicationContextRunner()
4444
.withConfiguration(AutoConfigurations.of(RedisAutoConfiguration.class,
4545
RedisHealthIndicatorAutoConfiguration.class, HealthIndicatorAutoConfiguration.class));
4646

4747
@Test
48-
public void runShouldCreateIndicator() {
48+
void runShouldCreateIndicator() {
4949
this.contextRunner.run((context) -> assertThat(context).hasSingleBean(RedisHealthIndicator.class)
5050
.doesNotHaveBean(RedisReactiveHealthIndicator.class).doesNotHaveBean(ApplicationHealthIndicator.class));
5151
}
5252

5353
@Test
54-
public void runWhenDisabledShouldNotCreateIndicator() {
54+
void runWhenDisabledShouldNotCreateIndicator() {
5555
this.contextRunner.withPropertyValues("management.health.redis.enabled:false")
5656
.run((context) -> assertThat(context).doesNotHaveBean(RedisHealthIndicator.class)
5757
.doesNotHaveBean(RedisReactiveHealthIndicator.class)

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/web/jersey/JerseyChildManagementContextConfigurationTests.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818

1919
import org.glassfish.jersey.server.ResourceConfig;
2020
import org.glassfish.jersey.servlet.ServletContainer;
21-
import org.junit.Test;
22-
import org.junit.runner.RunWith;
21+
import org.junit.jupiter.api.Test;
22+
import org.junit.jupiter.api.extension.ExtendWith;
2323

2424
import org.springframework.boot.autoconfigure.AutoConfigurations;
2525
import org.springframework.boot.autoconfigure.jersey.ResourceConfigCustomizer;
@@ -28,7 +28,7 @@
2828
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
2929
import org.springframework.boot.test.context.runner.WebApplicationContextRunner;
3030
import org.springframework.boot.testsupport.runner.classpath.ClassPathExclusions;
31-
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathRunner;
31+
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathExtension;
3232
import org.springframework.boot.web.servlet.ServletRegistrationBean;
3333
import org.springframework.context.annotation.Bean;
3434
import org.springframework.context.annotation.Configuration;
@@ -43,29 +43,29 @@
4343
* @author Andy Wilkinson
4444
* @author Madhura Bhave
4545
*/
46-
@RunWith(ModifiedClassPathRunner.class)
46+
@ExtendWith(ModifiedClassPathExtension.class)
4747
@ClassPathExclusions("spring-webmvc-*")
48-
public class JerseyChildManagementContextConfigurationTests {
48+
class JerseyChildManagementContextConfigurationTests {
4949

5050
private final WebApplicationContextRunner contextRunner = new WebApplicationContextRunner()
5151
.withUserConfiguration(JerseyChildManagementContextConfiguration.class);
5252

5353
@Test
54-
public void autoConfigurationIsConditionalOnServletWebApplication() {
54+
void autoConfigurationIsConditionalOnServletWebApplication() {
5555
ApplicationContextRunner contextRunner = new ApplicationContextRunner()
5656
.withConfiguration(AutoConfigurations.of(JerseySameManagementContextConfiguration.class));
5757
contextRunner
5858
.run((context) -> assertThat(context).doesNotHaveBean(JerseySameManagementContextConfiguration.class));
5959
}
6060

6161
@Test
62-
public void autoConfigurationIsConditionalOnClassResourceConfig() {
62+
void autoConfigurationIsConditionalOnClassResourceConfig() {
6363
this.contextRunner.withClassLoader(new FilteredClassLoader(ResourceConfig.class))
6464
.run((context) -> assertThat(context).doesNotHaveBean(JerseySameManagementContextConfiguration.class));
6565
}
6666

6767
@Test
68-
public void resourceConfigIsCustomizedWithResourceConfigCustomizerBean() {
68+
void resourceConfigIsCustomizedWithResourceConfigCustomizerBean() {
6969
this.contextRunner.withUserConfiguration(CustomizerConfiguration.class).run((context) -> {
7070
assertThat(context).hasSingleBean(ResourceConfig.class);
7171
ResourceConfig config = context.getBean(ResourceConfig.class);
@@ -75,7 +75,7 @@ public void resourceConfigIsCustomizedWithResourceConfigCustomizerBean() {
7575
}
7676

7777
@Test
78-
public void jerseyApplicationPathIsAutoConfigured() {
78+
void jerseyApplicationPathIsAutoConfigured() {
7979
this.contextRunner.run((context) -> {
8080
JerseyApplicationPath bean = context.getBean(JerseyApplicationPath.class);
8181
assertThat(bean.getPath()).isEqualTo("/");
@@ -84,15 +84,15 @@ public void jerseyApplicationPathIsAutoConfigured() {
8484

8585
@Test
8686
@SuppressWarnings("unchecked")
87-
public void servletRegistrationBeanIsAutoConfigured() {
87+
void servletRegistrationBeanIsAutoConfigured() {
8888
this.contextRunner.run((context) -> {
8989
ServletRegistrationBean<ServletContainer> bean = context.getBean(ServletRegistrationBean.class);
9090
assertThat(bean.getUrlMappings()).containsExactly("/*");
9191
});
9292
}
9393

9494
@Test
95-
public void resourceConfigCustomizerBeanIsNotRequired() {
95+
void resourceConfigCustomizerBeanIsNotRequired() {
9696
this.contextRunner.run((context) -> assertThat(context).hasSingleBean(ResourceConfig.class));
9797
}
9898

spring-boot-project/spring-boot-actuator-autoconfigure/src/test/java/org/springframework/boot/actuate/autoconfigure/web/jersey/JerseySameManagementContextConfigurationTests.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717

1818
import org.glassfish.jersey.server.ResourceConfig;
1919
import org.glassfish.jersey.servlet.ServletContainer;
20-
import org.junit.Test;
21-
import org.junit.runner.RunWith;
20+
import org.junit.jupiter.api.Test;
21+
import org.junit.jupiter.api.extension.ExtendWith;
2222

2323
import org.springframework.boot.autoconfigure.AutoConfigurations;
2424
import org.springframework.boot.autoconfigure.jersey.ResourceConfigCustomizer;
@@ -28,7 +28,7 @@
2828
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
2929
import org.springframework.boot.test.context.runner.WebApplicationContextRunner;
3030
import org.springframework.boot.testsupport.runner.classpath.ClassPathExclusions;
31-
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathRunner;
31+
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathExtension;
3232
import org.springframework.boot.web.servlet.ServletRegistrationBean;
3333
import org.springframework.context.annotation.Bean;
3434
import org.springframework.context.annotation.Configuration;
@@ -42,29 +42,29 @@
4242
*
4343
* @author Madhura Bhave
4444
*/
45-
@RunWith(ModifiedClassPathRunner.class)
45+
@ExtendWith(ModifiedClassPathExtension.class)
4646
@ClassPathExclusions("spring-webmvc-*")
47-
public class JerseySameManagementContextConfigurationTests {
47+
class JerseySameManagementContextConfigurationTests {
4848

4949
private final WebApplicationContextRunner contextRunner = new WebApplicationContextRunner()
5050
.withConfiguration(AutoConfigurations.of(JerseySameManagementContextConfiguration.class));
5151

5252
@Test
53-
public void autoConfigurationIsConditionalOnServletWebApplication() {
53+
void autoConfigurationIsConditionalOnServletWebApplication() {
5454
ApplicationContextRunner contextRunner = new ApplicationContextRunner()
5555
.withConfiguration(AutoConfigurations.of(JerseySameManagementContextConfiguration.class));
5656
contextRunner
5757
.run((context) -> assertThat(context).doesNotHaveBean(JerseySameManagementContextConfiguration.class));
5858
}
5959

6060
@Test
61-
public void autoConfigurationIsConditionalOnClassResourceConfig() {
61+
void autoConfigurationIsConditionalOnClassResourceConfig() {
6262
this.contextRunner.withClassLoader(new FilteredClassLoader(ResourceConfig.class))
6363
.run((context) -> assertThat(context).doesNotHaveBean(JerseySameManagementContextConfiguration.class));
6464
}
6565

6666
@Test
67-
public void resourceConfigIsCustomizedWithResourceConfigCustomizerBean() {
67+
void resourceConfigIsCustomizedWithResourceConfigCustomizerBean() {
6868
this.contextRunner.withUserConfiguration(CustomizerConfiguration.class).run((context) -> {
6969
assertThat(context).hasSingleBean(ResourceConfig.class);
7070
ResourceConfig config = context.getBean(ResourceConfig.class);
@@ -74,20 +74,20 @@ public void resourceConfigIsCustomizedWithResourceConfigCustomizerBean() {
7474
}
7575

7676
@Test
77-
public void jerseyApplicationPathIsAutoConfiguredWhenNeeded() {
77+
void jerseyApplicationPathIsAutoConfiguredWhenNeeded() {
7878
this.contextRunner.run((context) -> assertThat(context).hasSingleBean(DefaultJerseyApplicationPath.class));
7979
}
8080

8181
@Test
82-
public void jerseyApplicationPathIsConditionalOnMissingBean() {
82+
void jerseyApplicationPathIsConditionalOnMissingBean() {
8383
this.contextRunner.withUserConfiguration(ConfigWithJerseyApplicationPath.class).run((context) -> {
8484
assertThat(context).hasSingleBean(JerseyApplicationPath.class);
8585
assertThat(context).hasBean("testJerseyApplicationPath");
8686
});
8787
}
8888

8989
@Test
90-
public void existingResourceConfigBeanShouldNotAutoConfigureRelatedBeans() {
90+
void existingResourceConfigBeanShouldNotAutoConfigureRelatedBeans() {
9191
this.contextRunner.withUserConfiguration(ConfigWithResourceConfig.class).run((context) -> {
9292
assertThat(context).hasSingleBean(ResourceConfig.class);
9393
assertThat(context).doesNotHaveBean(JerseyApplicationPath.class);
@@ -98,7 +98,7 @@ public void existingResourceConfigBeanShouldNotAutoConfigureRelatedBeans() {
9898

9999
@Test
100100
@SuppressWarnings("unchecked")
101-
public void servletRegistrationBeanIsAutoConfiguredWhenNeeded() {
101+
void servletRegistrationBeanIsAutoConfiguredWhenNeeded() {
102102
this.contextRunner.withPropertyValues("spring.jersey.application-path=/jersey").run((context) -> {
103103
ServletRegistrationBean<ServletContainer> bean = context.getBean(ServletRegistrationBean.class);
104104
assertThat(bean.getUrlMappings()).containsExactly("/jersey/*");

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/batch/BatchAutoConfigurationWithoutJdbcTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616

1717
package org.springframework.boot.autoconfigure.batch;
1818

19-
import org.junit.Test;
20-
import org.junit.runner.RunWith;
19+
import org.junit.jupiter.api.Test;
20+
import org.junit.jupiter.api.extension.ExtendWith;
2121

2222
import org.springframework.batch.core.configuration.annotation.BatchConfigurer;
2323
import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
@@ -29,7 +29,7 @@
2929
import org.springframework.boot.autoconfigure.transaction.TransactionAutoConfiguration;
3030
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
3131
import org.springframework.boot.testsupport.runner.classpath.ClassPathExclusions;
32-
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathRunner;
32+
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathExtension;
3333
import org.springframework.context.annotation.Configuration;
3434
import org.springframework.transaction.PlatformTransactionManager;
3535

@@ -41,7 +41,7 @@
4141
*
4242
* @author Andy Wilkinson
4343
*/
44-
@RunWith(ModifiedClassPathRunner.class)
44+
@ExtendWith(ModifiedClassPathExtension.class)
4545
@ClassPathExclusions("spring-jdbc-*.jar")
4646
class BatchAutoConfigurationWithoutJdbcTests {
4747

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/batch/BatchAutoConfigurationWithoutJpaTests.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818

1919
import javax.sql.DataSource;
2020

21-
import org.junit.Test;
22-
import org.junit.runner.RunWith;
21+
import org.junit.jupiter.api.Test;
22+
import org.junit.jupiter.api.extension.ExtendWith;
2323

2424
import org.springframework.batch.core.JobParameters;
2525
import org.springframework.batch.core.configuration.annotation.EnableBatchProcessing;
@@ -34,7 +34,7 @@
3434
import org.springframework.boot.jdbc.DataSourceInitializationMode;
3535
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
3636
import org.springframework.boot.testsupport.runner.classpath.ClassPathExclusions;
37-
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathRunner;
37+
import org.springframework.boot.testsupport.runner.classpath.ModifiedClassPathExtension;
3838
import org.springframework.jdbc.core.JdbcTemplate;
3939
import org.springframework.transaction.PlatformTransactionManager;
4040

@@ -45,15 +45,15 @@
4545
*
4646
* @author Stephane Nicoll
4747
*/
48-
@RunWith(ModifiedClassPathRunner.class)
48+
@ExtendWith(ModifiedClassPathExtension.class)
4949
@ClassPathExclusions("hibernate-jpa-*.jar")
50-
public class BatchAutoConfigurationWithoutJpaTests {
50+
class BatchAutoConfigurationWithoutJpaTests {
5151

5252
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
5353
.withConfiguration(AutoConfigurations.of(BatchAutoConfiguration.class, TransactionAutoConfiguration.class));
5454

5555
@Test
56-
public void jdbcWithDefaultSettings() {
56+
void jdbcWithDefaultSettings() {
5757
this.contextRunner.withUserConfiguration(DefaultConfiguration.class, EmbeddedDataSourceConfiguration.class)
5858
.withPropertyValues("spring.datasource.generate-unique-name=true").run((context) -> {
5959
assertThat(context).hasSingleBean(JobLauncher.class);
@@ -73,7 +73,7 @@ public void jdbcWithDefaultSettings() {
7373
}
7474

7575
@Test
76-
public void jdbcWithCustomPrefix() {
76+
void jdbcWithCustomPrefix() {
7777
this.contextRunner.withUserConfiguration(DefaultConfiguration.class, EmbeddedDataSourceConfiguration.class)
7878
.withPropertyValues("spring.datasource.generate-unique-name=true",
7979
"spring.batch.schema:classpath:batch/custom-schema-hsql.sql",

0 commit comments

Comments
 (0)