Browse Source

Update AOT tests to fail if deprecated code is not suppressed

Closes gh-48566
pull/48577/head
Stéphane Nicoll 1 week ago
parent
commit
8e895b3bc0
  1. 1
      core/spring-boot-test/src/test/java/org/springframework/boot/test/context/SpringBootContextLoaderAotTests.java
  2. 17
      core/spring-boot/src/test/java/org/springframework/boot/context/properties/ConfigurationPropertiesBeanRegistrationAotProcessorTests.java
  3. 5
      core/spring-boot/src/test/java/org/springframework/boot/support/EnvironmentPostProcessorApplicationListenerTests.java
  4. 17
      module/spring-boot-flyway/src/test/java/org/springframework/boot/flyway/autoconfigure/ResourceProviderCustomizerBeanRegistrationAotProcessorTests.java
  5. 19
      module/spring-boot-jackson/src/test/java/org/springframework/boot/jackson/JacksonMixinModuleEntriesBeanRegistrationAotProcessorTests.java
  6. 2
      module/spring-boot-jackson2/src/test/java/org/springframework/boot/jackson2/JsonMixinModuleEntriesBeanRegistrationAotProcessorTests.java
  7. 17
      module/spring-boot-web-server/src/test/java/org/springframework/boot/web/server/servlet/context/ServletComponentScanRegistrarTests.java

1
core/spring-boot-test/src/test/java/org/springframework/boot/test/context/SpringBootContextLoaderAotTests.java

@ -60,6 +60,7 @@ class SpringBootContextLoaderAotTests { @@ -60,6 +60,7 @@ class SpringBootContextLoaderAotTests {
Class<?> testClass = ExampleTest.class;
generator.processAheadOfTime(Stream.of(testClass));
TestCompiler.forSystem()
.withCompilerOptions("-Xlint:deprecation", "-Werror")
.with(CompilerFiles.from(generatedFiles))
.compile(ThrowingConsumer.of((compiled) -> assertCompiledTest(testClass)));
}

17
core/spring-boot/src/test/java/org/springframework/boot/context/properties/ConfigurationPropertiesBeanRegistrationAotProcessorTests.java

@ -160,13 +160,16 @@ class ConfigurationPropertiesBeanRegistrationAotProcessorTests { @@ -160,13 +160,16 @@ class ConfigurationPropertiesBeanRegistrationAotProcessorTests {
TestGenerationContext generationContext = new TestGenerationContext(TestTarget.class);
ClassName className = new ApplicationContextAotGenerator().processAheadOfTime(context, generationContext);
generationContext.writeGeneratedContent();
TestCompiler.forSystem().with(generationContext).compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshContext.accept(freshApplicationContext);
});
TestCompiler.forSystem()
.withCompilerOptions("-Xlint:deprecation", "-Werror")
.with(generationContext)
.compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshContext.accept(freshApplicationContext);
});
}
@Configuration(proxyBeanMethods = false)

5
core/spring-boot/src/test/java/org/springframework/boot/support/EnvironmentPostProcessorApplicationListenerTests.java

@ -307,7 +307,10 @@ class EnvironmentPostProcessorApplicationListenerTests { @@ -307,7 +307,10 @@ class EnvironmentPostProcessorApplicationListenerTests {
TestGenerationContext generationContext = new TestGenerationContext(TEST_APP);
new ApplicationContextAotGenerator().processAheadOfTime(context, generationContext);
generationContext.writeGeneratedContent();
TestCompiler.forSystem().with(generationContext).compile(compiled);
TestCompiler.forSystem()
.withCompilerOptions("-Xlint:deprecation", "-Werror")
.with(generationContext)
.compile(compiled);
}
private ClassLoader createClassLoaderWithAdditionalSpringFactories(Path tempDir, Properties properties) {

17
module/spring-boot-flyway/src/test/java/org/springframework/boot/flyway/autoconfigure/ResourceProviderCustomizerBeanRegistrationAotProcessorTests.java

@ -87,13 +87,16 @@ class ResourceProviderCustomizerBeanRegistrationAotProcessorTests { @@ -87,13 +87,16 @@ class ResourceProviderCustomizerBeanRegistrationAotProcessorTests {
TestGenerationContext generationContext = new TestGenerationContext(TestTarget.class);
ClassName className = new ApplicationContextAotGenerator().processAheadOfTime(context, generationContext);
generationContext.writeGeneratedContent();
TestCompiler.forSystem().with(generationContext).compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshContext.accept(freshApplicationContext);
});
TestCompiler.forSystem()
.withCompilerOptions("-Xlint:deprecation", "-Werror")
.with(generationContext)
.compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshContext.accept(freshApplicationContext);
});
}
static class TestTarget {

19
module/spring-boot-jackson/src/test/java/org/springframework/boot/jackson/JacksonMixinModuleEntriesBeanRegistrationAotProcessorTests.java

@ -106,14 +106,17 @@ class JacksonMixinModuleEntriesBeanRegistrationAotProcessorTests { @@ -106,14 +106,17 @@ class JacksonMixinModuleEntriesBeanRegistrationAotProcessorTests {
@SuppressWarnings("unchecked")
private void compile(BiConsumer<GenericApplicationContext, Compiled> result) {
ClassName className = processAheadOfTime();
TestCompiler.forSystem().with(this.generationContext).compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshApplicationContext.refresh();
result.accept(freshApplicationContext, compiled);
});
TestCompiler.forSystem()
.withCompilerOptions("-Xlint:deprecation", "-Werror")
.with(this.generationContext)
.compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshApplicationContext.refresh();
result.accept(freshApplicationContext, compiled);
});
}
private void registerEntries(Class<?>... basePackageClasses) {

2
module/spring-boot-jackson2/src/test/java/org/springframework/boot/jackson2/JsonMixinModuleEntriesBeanRegistrationAotProcessorTests.java

@ -110,7 +110,7 @@ class JsonMixinModuleEntriesBeanRegistrationAotProcessorTests { @@ -110,7 +110,7 @@ class JsonMixinModuleEntriesBeanRegistrationAotProcessorTests {
private void compile(BiConsumer<GenericApplicationContext, Compiled> result) {
ClassName className = processAheadOfTime();
TestCompiler.forSystem()
.withCompilerOptions("-Xlint:all", "-Werror")
.withCompilerOptions("-Xlint:deprecation", "-Werror")
.with(this.generationContext)
.compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();

17
module/spring-boot-web-server/src/test/java/org/springframework/boot/web/server/servlet/context/ServletComponentScanRegistrarTests.java

@ -176,13 +176,16 @@ class ServletComponentScanRegistrarTests { @@ -176,13 +176,16 @@ class ServletComponentScanRegistrarTests {
ClassName.get(getClass().getPackageName(), "TestTarget"));
ClassName className = new ApplicationContextAotGenerator().processAheadOfTime(context, generationContext);
generationContext.writeGeneratedContent();
TestCompiler.forSystem().with(generationContext).compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshContext.accept(freshApplicationContext);
});
TestCompiler.forSystem()
.withCompilerOptions("-Xlint:deprecation", "-Werror")
.with(generationContext)
.compile((compiled) -> {
GenericApplicationContext freshApplicationContext = new GenericApplicationContext();
ApplicationContextInitializer<GenericApplicationContext> initializer = compiled
.getInstance(ApplicationContextInitializer.class, className.toString());
initializer.initialize(freshApplicationContext);
freshContext.accept(freshApplicationContext);
});
}
@Configuration(proxyBeanMethods = false)

Loading…
Cancel
Save