|
|
|
@ -547,20 +547,21 @@ class DefaultWebTestClient implements WebTestClient { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public <T extends S> T isEqualTo(B expected) { |
|
|
|
public <T extends S> T isEqualTo(@Nullable B expected) { |
|
|
|
this.result.assertWithDiagnostics(() -> |
|
|
|
this.result.assertWithDiagnostics(() -> |
|
|
|
AssertionErrors.assertEquals("Response body", expected, this.result.getResponseBody())); |
|
|
|
AssertionErrors.assertEquals("Response body", expected, this.result.getResponseBody())); |
|
|
|
return self(); |
|
|
|
return self(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public <T extends S> T value(Matcher<? super B> matcher) { |
|
|
|
public <T extends S> T value(Matcher<? super @Nullable B> matcher) { |
|
|
|
this.result.assertWithDiagnostics(() -> MatcherAssert.assertThat(this.result.getResponseBody(), matcher)); |
|
|
|
this.result.assertWithDiagnostics(() -> MatcherAssert.assertThat(this.result.getResponseBody(), matcher)); |
|
|
|
return self(); |
|
|
|
return self(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public <T extends S, R> T value(Function<B, R> bodyMapper, Matcher<? super R> matcher) { |
|
|
|
@SuppressWarnings("NullAway") // https://github.com/uber/NullAway/issues/1129
|
|
|
|
|
|
|
|
public <T extends S, R> T value(Function<@Nullable B, @Nullable R> bodyMapper, Matcher<? super @Nullable R> matcher) { |
|
|
|
this.result.assertWithDiagnostics(() -> { |
|
|
|
this.result.assertWithDiagnostics(() -> { |
|
|
|
B body = this.result.getResponseBody(); |
|
|
|
B body = this.result.getResponseBody(); |
|
|
|
MatcherAssert.assertThat(bodyMapper.apply(body), matcher); |
|
|
|
MatcherAssert.assertThat(bodyMapper.apply(body), matcher); |
|
|
|
@ -569,7 +570,8 @@ class DefaultWebTestClient implements WebTestClient { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public <T extends S> T value(Consumer<B> consumer) { |
|
|
|
@SuppressWarnings("NullAway") // https://github.com/uber/NullAway/issues/1129
|
|
|
|
|
|
|
|
public <T extends S> T value(Consumer<@Nullable B> consumer) { |
|
|
|
this.result.assertWithDiagnostics(() -> consumer.accept(this.result.getResponseBody())); |
|
|
|
this.result.assertWithDiagnostics(() -> consumer.accept(this.result.getResponseBody())); |
|
|
|
return self(); |
|
|
|
return self(); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -592,7 +594,7 @@ class DefaultWebTestClient implements WebTestClient { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static class DefaultListBodySpec<E> extends DefaultBodySpec<List<E>, ListBodySpec<E>> |
|
|
|
private static class DefaultListBodySpec<E> extends DefaultBodySpec<List<@Nullable E>, ListBodySpec<E>> |
|
|
|
implements ListBodySpec<E> { |
|
|
|
implements ListBodySpec<E> { |
|
|
|
|
|
|
|
|
|
|
|
DefaultListBodySpec(EntityExchangeResult<List<E>> result) { |
|
|
|
DefaultListBodySpec(EntityExchangeResult<List<E>> result) { |
|
|
|
@ -601,7 +603,7 @@ class DefaultWebTestClient implements WebTestClient { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public ListBodySpec<E> hasSize(int size) { |
|
|
|
public ListBodySpec<E> hasSize(int size) { |
|
|
|
List<E> actual = getResult().getResponseBody(); |
|
|
|
List<@Nullable E> actual = getResult().getResponseBody(); |
|
|
|
String message = "Response body does not contain " + size + " elements"; |
|
|
|
String message = "Response body does not contain " + size + " elements"; |
|
|
|
getResult().assertWithDiagnostics(() -> |
|
|
|
getResult().assertWithDiagnostics(() -> |
|
|
|
AssertionErrors.assertEquals(message, size, (actual != null ? actual.size() : 0))); |
|
|
|
AssertionErrors.assertEquals(message, size, (actual != null ? actual.size() : 0))); |
|
|
|
@ -610,9 +612,9 @@ class DefaultWebTestClient implements WebTestClient { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
@SuppressWarnings("unchecked") |
|
|
|
@SuppressWarnings("unchecked") |
|
|
|
public ListBodySpec<E> contains(E... elements) { |
|
|
|
public ListBodySpec<E> contains(@Nullable E... elements) { |
|
|
|
List<E> expected = Arrays.asList(elements); |
|
|
|
List<E> expected = Arrays.asList(elements); |
|
|
|
List<E> actual = getResult().getResponseBody(); |
|
|
|
List<@Nullable E> actual = getResult().getResponseBody(); |
|
|
|
String message = "Response body does not contain " + expected; |
|
|
|
String message = "Response body does not contain " + expected; |
|
|
|
getResult().assertWithDiagnostics(() -> |
|
|
|
getResult().assertWithDiagnostics(() -> |
|
|
|
AssertionErrors.assertTrue(message, (actual != null && actual.containsAll(expected)))); |
|
|
|
AssertionErrors.assertTrue(message, (actual != null && actual.containsAll(expected)))); |
|
|
|
@ -621,9 +623,9 @@ class DefaultWebTestClient implements WebTestClient { |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
@SuppressWarnings("unchecked") |
|
|
|
@SuppressWarnings("unchecked") |
|
|
|
public ListBodySpec<E> doesNotContain(E... elements) { |
|
|
|
public ListBodySpec<E> doesNotContain(@Nullable E... elements) { |
|
|
|
List<E> expected = Arrays.asList(elements); |
|
|
|
List<E> expected = Arrays.asList(elements); |
|
|
|
List<E> actual = getResult().getResponseBody(); |
|
|
|
List<@Nullable E> actual = getResult().getResponseBody(); |
|
|
|
String message = "Response body should not have contained " + expected; |
|
|
|
String message = "Response body should not have contained " + expected; |
|
|
|
getResult().assertWithDiagnostics(() -> |
|
|
|
getResult().assertWithDiagnostics(() -> |
|
|
|
AssertionErrors.assertTrue(message, (actual == null || !actual.containsAll(expected)))); |
|
|
|
AssertionErrors.assertTrue(message, (actual == null || !actual.containsAll(expected)))); |
|
|
|
@ -631,7 +633,7 @@ class DefaultWebTestClient implements WebTestClient { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Override |
|
|
|
public EntityExchangeResult<List<E>> returnResult() { |
|
|
|
public EntityExchangeResult<List<@Nullable E>> returnResult() { |
|
|
|
return getResult(); |
|
|
|
return getResult(); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|