diff --git a/module/spring-boot-reactor-netty/build.gradle b/module/spring-boot-reactor-netty/build.gradle index 55c1e0e8c0e..9ed4c281f4b 100644 --- a/module/spring-boot-reactor-netty/build.gradle +++ b/module/spring-boot-reactor-netty/build.gradle @@ -43,8 +43,14 @@ dependencies { testImplementation("io.projectreactor:reactor-test") testImplementation("org.springframework:spring-webflux") + testCompileOnly("com.google.code.findbugs:jsr305") + testRuntimeOnly("ch.qos.logback:logback-classic") testRuntimeOnly("org.eclipse.jetty:jetty-client") testRuntimeOnly("org.eclipse.jetty.http2:jetty-http2-client") testRuntimeOnly("org.eclipse.jetty.http2:jetty-http2-client-transport") } + +tasks.named("compileTestJava") { + options.nullability.checking = "tests" +} diff --git a/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/NettyReactiveWebServerFactoryTests.java b/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/NettyReactiveWebServerFactoryTests.java index d3b6136e39c..cc93043de27 100644 --- a/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/NettyReactiveWebServerFactoryTests.java +++ b/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/NettyReactiveWebServerFactoryTests.java @@ -23,6 +23,7 @@ import java.util.Arrays; import io.netty.channel.Channel; import org.awaitility.Awaitility; +import org.jspecify.annotations.Nullable; import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; import org.mockito.InOrder; @@ -246,7 +247,7 @@ class NettyReactiveWebServerFactoryTests extends AbstractReactiveWebServerFactor @Override NettyWebServer createNettyWebServer(HttpServer httpServer, ReactorHttpHandlerAdapter handlerAdapter, - Duration lifecycleTimeout, Shutdown shutdown) { + @Nullable Duration lifecycleTimeout, Shutdown shutdown) { return new NoPortNettyWebServer(httpServer, handlerAdapter, lifecycleTimeout, shutdown); } @@ -254,8 +255,8 @@ class NettyReactiveWebServerFactoryTests extends AbstractReactiveWebServerFactor static class NoPortNettyWebServer extends NettyWebServer { - NoPortNettyWebServer(HttpServer httpServer, ReactorHttpHandlerAdapter handlerAdapter, Duration lifecycleTimeout, - Shutdown shutdown) { + NoPortNettyWebServer(HttpServer httpServer, ReactorHttpHandlerAdapter handlerAdapter, + @Nullable Duration lifecycleTimeout, @Nullable Shutdown shutdown) { super(httpServer, handlerAdapter, lifecycleTimeout, shutdown, null); } diff --git a/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/autoconfigure/NettyReactiveWebServerFactoryCustomizerTests.java b/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/autoconfigure/NettyReactiveWebServerFactoryCustomizerTests.java index f8e210bf165..c3ee9666fc5 100644 --- a/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/autoconfigure/NettyReactiveWebServerFactoryCustomizerTests.java +++ b/module/spring-boot-reactor-netty/src/test/java/org/springframework/boot/reactor/netty/autoconfigure/NettyReactiveWebServerFactoryCustomizerTests.java @@ -63,6 +63,7 @@ class NettyReactiveWebServerFactoryCustomizerTests { private NettyReactiveWebServerFactoryCustomizer customizer; @Captor + @SuppressWarnings("NullAway.Init") private ArgumentCaptor customizerCaptor; @BeforeEach @@ -196,6 +197,7 @@ class NettyReactiveWebServerFactoryCustomizerTests { NettyServerCustomizer serverCustomizer = this.customizerCaptor.getAllValues().get(0); HttpServer httpServer = serverCustomizer.apply(HttpServer.create()); Http2SettingsSpec decoder = httpServer.configuration().http2SettingsSpec(); + assertThat(decoder).isNotNull(); assertThat(decoder.maxHeaderListSize()).isEqualTo(expected); }