Skip to content

Commit 3db5b57

Browse files
committed
Add nullability annotations to module/spring-boot-test-autoconfigure
See gh-46587
1 parent 8b3e9f7 commit 3db5b57

File tree

48 files changed

+194
-63
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+194
-63
lines changed

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/OnFailureConditionReportContextCustomizerFactory.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import java.util.List;
2020
import java.util.function.Supplier;
2121

22+
import org.jspecify.annotations.Nullable;
23+
2224
import org.springframework.boot.autoconfigure.condition.ConditionEvaluationReport;
2325
import org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportMessage;
2426
import org.springframework.boot.context.event.ApplicationFailedEvent;
@@ -89,7 +91,7 @@ public void onApplicationEvent(ApplicationFailedEvent event) {
8991
}
9092
}
9193

92-
private static boolean shouldPrintReport(ConfigurableApplicationContext context) {
94+
private static boolean shouldPrintReport(@Nullable ConfigurableApplicationContext context) {
9395
return (context == null) || context.getEnvironment()
9496
.getProperty("spring.test.print-condition-evaluation-report", Boolean.class, true);
9597
}

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/OverrideAutoConfigurationContextCustomizerFactory.java

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

1919
import java.util.List;
2020

21+
import org.jspecify.annotations.Nullable;
22+
2123
import org.springframework.aot.AotDetector;
2224
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
2325
import org.springframework.boot.test.util.TestPropertyValues;
@@ -37,7 +39,7 @@
3739
class OverrideAutoConfigurationContextCustomizerFactory implements ContextCustomizerFactory {
3840

3941
@Override
40-
public ContextCustomizer createContextCustomizer(Class<?> testClass,
42+
public @Nullable ContextCustomizer createContextCustomizer(Class<?> testClass,
4143
List<ContextConfigurationAttributes> configurationAttributes) {
4244
if (AotDetector.useGeneratedArtifacts()) {
4345
return null;
@@ -59,7 +61,7 @@ public void customizeContext(ConfigurableApplicationContext context, MergedConte
5961
}
6062

6163
@Override
62-
public boolean equals(Object obj) {
64+
public boolean equals(@Nullable Object obj) {
6365
return (obj != null) && (obj.getClass() == getClass());
6466
}
6567

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/TestSliceTestContextBootstrapper.java

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

1919
import java.lang.annotation.Annotation;
2020

21+
import org.jspecify.annotations.Nullable;
22+
2123
import org.springframework.boot.test.context.SpringBootTestContextBootstrapper;
2224
import org.springframework.core.ResolvableType;
2325
import org.springframework.core.annotation.MergedAnnotation;
@@ -40,16 +42,17 @@ public abstract class TestSliceTestContextBootstrapper<T extends Annotation> ext
4042

4143
@SuppressWarnings("unchecked")
4244
protected TestSliceTestContextBootstrapper() {
43-
this.annotationType = (Class<T>) ResolvableType.forClass(getClass())
45+
Class<T> annotationType = (Class<T>) ResolvableType.forClass(getClass())
4446
.as(TestSliceTestContextBootstrapper.class)
4547
.getGeneric(0)
4648
.resolve();
47-
Assert.notNull(this.annotationType, "'%s' doesn't contain type parameter of '%s'"
48-
.formatted(getClass().getName(), TestSliceTestContextBootstrapper.class.getName()));
49+
Assert.notNull(annotationType, "'%s' doesn't contain type parameter of '%s'".formatted(getClass().getName(),
50+
TestSliceTestContextBootstrapper.class.getName()));
51+
this.annotationType = annotationType;
4952
}
5053

5154
@Override
52-
protected String[] getProperties(Class<?> testClass) {
55+
protected String @Nullable [] getProperties(Class<?> testClass) {
5356
MergedAnnotation<T> annotation = MergedAnnotations.search(SearchStrategy.TYPE_HIERARCHY)
5457
.withEnclosingClasses(TestContextAnnotationUtils::searchEnclosingClass)
5558
.from(testClass)

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/actuate/observability/ObservabilityContextCustomizerFactory.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
import java.util.List;
2020
import java.util.Objects;
2121

22+
import org.jspecify.annotations.Nullable;
23+
2224
import org.springframework.boot.test.util.TestPropertyValues;
2325
import org.springframework.context.ConfigurableApplicationContext;
2426
import org.springframework.core.env.Environment;
@@ -50,9 +52,9 @@ public ContextCustomizer createContextCustomizer(Class<?> testClass,
5052

5153
private static class DisableObservabilityContextCustomizer implements ContextCustomizer {
5254

53-
private final AutoConfigureObservability annotation;
55+
private final @Nullable AutoConfigureObservability annotation;
5456

55-
DisableObservabilityContextCustomizer(AutoConfigureObservability annotation) {
57+
DisableObservabilityContextCustomizer(@Nullable AutoConfigureObservability annotation) {
5658
this.annotation = annotation;
5759
}
5860

@@ -85,7 +87,7 @@ private boolean isTracingDisabled(Environment environment) {
8587
}
8688

8789
@Override
88-
public boolean equals(Object o) {
90+
public boolean equals(@Nullable Object o) {
8991
if (this == o) {
9092
return true;
9193
}

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/actuate/observability/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,7 @@
1717
/**
1818
* Auto-configuration for handling observability in tests.
1919
*/
20+
@NullMarked
2021
package org.springframework.boot.test.autoconfigure.actuate.observability;
22+
23+
import org.jspecify.annotations.NullMarked;

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/core/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,7 @@
1717
/**
1818
* Auto-configuration for core parts common to most Spring Boot applications.
1919
*/
20+
@NullMarked
2021
package org.springframework.boot.test.autoconfigure.core;
22+
23+
import org.jspecify.annotations.NullMarked;

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/data/cassandra/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,7 @@
1717
/**
1818
* Auto-configuration for Data Cassandra tests.
1919
*/
20+
@NullMarked
2021
package org.springframework.boot.test.autoconfigure.data.cassandra;
22+
23+
import org.jspecify.annotations.NullMarked;

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/data/couchbase/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,7 @@
1717
/**
1818
* Auto-configuration for Data Couchbase tests.
1919
*/
20+
@NullMarked
2021
package org.springframework.boot.test.autoconfigure.data.couchbase;
22+
23+
import org.jspecify.annotations.NullMarked;

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/data/elasticsearch/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,7 @@
1717
/**
1818
* Auto-configuration for Data Elasticsearch tests.
1919
*/
20+
@NullMarked
2021
package org.springframework.boot.test.autoconfigure.data.elasticsearch;
22+
23+
import org.jspecify.annotations.NullMarked;

module/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/data/jdbc/package-info.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,7 @@
1717
/**
1818
* Auto-configuration for Data JDBC tests.
1919
*/
20+
@NullMarked
2021
package org.springframework.boot.test.autoconfigure.data.jdbc;
22+
23+
import org.jspecify.annotations.NullMarked;

0 commit comments

Comments
 (0)