Browse Source

Add nullability annotations to tests in smoke-test/spring-boot-smoke-test-webflux

See gh-47263
pull/47665/head
Moritz Halbritter 2 months ago
parent
commit
3818c21eb3
  1. 4
      smoke-test/spring-boot-smoke-test-webflux/build.gradle
  2. 13
      smoke-test/spring-boot-smoke-test-webflux/src/test/java/smoketest/webflux/SampleWebFluxApplicationIntegrationTests.java
  3. 10
      smoke-test/spring-boot-smoke-test-webflux/src/test/java/smoketest/webflux/SampleWebFluxApplicationTests.java

4
smoke-test/spring-boot-smoke-test-webflux/build.gradle

@ -30,3 +30,7 @@ dependencies {
testImplementation(project(":starter:spring-boot-starter-webflux-test")) testImplementation(project(":starter:spring-boot-starter-webflux-test"))
testImplementation("io.projectreactor:reactor-test") testImplementation("io.projectreactor:reactor-test")
} }
tasks.named("compileTestJava") {
options.nullability.checking = "tests"
}

13
smoke-test/spring-boot-smoke-test-webflux/src/test/java/smoketest/webflux/SampleWebFluxApplicationIntegrationTests.java

@ -16,6 +16,9 @@
package smoketest.webflux; package smoketest.webflux;
import java.util.function.Consumer;
import org.jspecify.annotations.Nullable;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
@ -77,6 +80,7 @@ class SampleWebFluxApplicationIntegrationTests {
@Test @Test
void templated404ErrorPage() { void templated404ErrorPage() {
Consumer<@Nullable String> test = (body) -> assertThat(body).isEqualToNormalizingNewlines("404 page\n");
this.webClient.get() this.webClient.get()
.uri("/404") .uri("/404")
.accept(MediaType.TEXT_HTML) .accept(MediaType.TEXT_HTML)
@ -84,11 +88,12 @@ class SampleWebFluxApplicationIntegrationTests {
.expectStatus() .expectStatus()
.isNotFound() .isNotFound()
.expectBody(String.class) .expectBody(String.class)
.value((body) -> assertThat(body).isEqualToNormalizingNewlines("404 page\n")); .value(test);
} }
@Test @Test
void templated4xxErrorPage() { void templated4xxErrorPage() {
Consumer<@Nullable String> test = (body) -> assertThat(body).isEqualToNormalizingNewlines("4xx page\n");
this.webClient.get() this.webClient.get()
.uri("/bad-request") .uri("/bad-request")
.accept(MediaType.TEXT_HTML) .accept(MediaType.TEXT_HTML)
@ -96,11 +101,13 @@ class SampleWebFluxApplicationIntegrationTests {
.expectStatus() .expectStatus()
.isBadRequest() .isBadRequest()
.expectBody(String.class) .expectBody(String.class)
.value((body) -> assertThat(body).isEqualToNormalizingNewlines("4xx page\n")); .value(test);
} }
@Test @Test
void htmlErrorPage() { void htmlErrorPage() {
Consumer<@Nullable String> test = (body) -> assertThat(body).contains("status: 500")
.contains("message: Expected!");
this.webClient.get() this.webClient.get()
.uri("/five-hundred") .uri("/five-hundred")
.accept(MediaType.TEXT_HTML) .accept(MediaType.TEXT_HTML)
@ -108,7 +115,7 @@ class SampleWebFluxApplicationIntegrationTests {
.expectStatus() .expectStatus()
.isEqualTo(HttpStatus.INTERNAL_SERVER_ERROR) .isEqualTo(HttpStatus.INTERNAL_SERVER_ERROR)
.expectBody(String.class) .expectBody(String.class)
.value((body) -> assertThat(body).contains("status: 500").contains("message: Expected!")); .value(test);
} }
} }

10
smoke-test/spring-boot-smoke-test-webflux/src/test/java/smoketest/webflux/SampleWebFluxApplicationTests.java

@ -17,7 +17,9 @@
package smoketest.webflux; package smoketest.webflux;
import java.util.Map; import java.util.Map;
import java.util.function.Consumer;
import org.jspecify.annotations.Nullable;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
@ -61,6 +63,8 @@ class SampleWebFluxApplicationTests {
@Test @Test
void testBadRequest() { void testBadRequest() {
Consumer<@Nullable Map<String, Object>> test = (content) -> assertThat(content).containsEntry("path",
"/bad-request");
this.webClient.get() this.webClient.get()
.uri("/bad-request") .uri("/bad-request")
.accept(MediaType.APPLICATION_JSON) .accept(MediaType.APPLICATION_JSON)
@ -68,11 +72,13 @@ class SampleWebFluxApplicationTests {
.expectStatus() .expectStatus()
.isBadRequest() .isBadRequest()
.expectBody(MAP_TYPE) .expectBody(MAP_TYPE)
.value((content) -> assertThat(content).containsEntry("path", "/bad-request")); .value(test);
} }
@Test @Test
void testServerError() { void testServerError() {
Consumer<@Nullable Map<String, Object>> test = (content) -> assertThat(content).containsEntry("path",
"/five-hundred");
this.webClient.get() this.webClient.get()
.uri("/five-hundred") .uri("/five-hundred")
.accept(MediaType.APPLICATION_JSON) .accept(MediaType.APPLICATION_JSON)
@ -80,7 +86,7 @@ class SampleWebFluxApplicationTests {
.expectStatus() .expectStatus()
.isEqualTo(HttpStatus.INTERNAL_SERVER_ERROR) .isEqualTo(HttpStatus.INTERNAL_SERVER_ERROR)
.expectBody(MAP_TYPE) .expectBody(MAP_TYPE)
.value((content) -> assertThat(content).containsEntry("path", "/five-hundred")); .value(test);
} }
} }

Loading…
Cancel
Save