Test with hasError for unknown status code
Issue: SPR-16108
This commit is contained in:
parent
9cfa9291cc
commit
d963597ec0
|
|
@ -30,12 +30,14 @@ import org.springframework.util.FileCopyUtils;
|
||||||
* Spring's default implementation of the {@link ResponseErrorHandler} interface.
|
* Spring's default implementation of the {@link ResponseErrorHandler} interface.
|
||||||
*
|
*
|
||||||
* <p>This error handler checks for the status code on the {@link ClientHttpResponse}:
|
* <p>This error handler checks for the status code on the {@link ClientHttpResponse}:
|
||||||
* Any code with series {@link org.springframework.http.HttpStatus.Series#CLIENT_ERROR} or
|
* Any code with series {@link org.springframework.http.HttpStatus.Series#CLIENT_ERROR}
|
||||||
* {@link org.springframework.http.HttpStatus.Series#SERVER_ERROR} is considered to be an
|
* or {@link org.springframework.http.HttpStatus.Series#SERVER_ERROR} is considered to be
|
||||||
* error. This behavior can be changed by overriding the {@link #hasError(HttpStatus)} method.
|
* an error; this behavior can be changed by overriding the {@link #hasError(HttpStatus)}
|
||||||
|
* method. Unknown status codes will be ignored by {@link #hasError(ClientHttpResponse)}.
|
||||||
*
|
*
|
||||||
* @author Arjen Poutsma
|
* @author Arjen Poutsma
|
||||||
* @author Rossen Stoyanchev
|
* @author Rossen Stoyanchev
|
||||||
|
* @author Juergen Hoeller
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
* @see RestTemplate#setErrorHandler
|
* @see RestTemplate#setErrorHandler
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -67,8 +67,8 @@ public class DefaultResponseErrorHandlerTests {
|
||||||
handler.handleError(response);
|
handler.handleError(response);
|
||||||
fail("expected HttpClientErrorException");
|
fail("expected HttpClientErrorException");
|
||||||
}
|
}
|
||||||
catch (HttpClientErrorException e) {
|
catch (HttpClientErrorException ex) {
|
||||||
assertSame(headers, e.getResponseHeaders());
|
assertSame(headers, ex.getResponseHeaders());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -109,4 +109,16 @@ public class DefaultResponseErrorHandlerTests {
|
||||||
handler.handleError(response);
|
handler.handleError(response);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test // SPR-16108
|
||||||
|
public void hasErrorForUnknownStatusCode() throws Exception {
|
||||||
|
HttpHeaders headers = new HttpHeaders();
|
||||||
|
headers.setContentType(MediaType.TEXT_PLAIN);
|
||||||
|
|
||||||
|
given(response.getRawStatusCode()).willReturn(999);
|
||||||
|
given(response.getStatusText()).willReturn("Custom status code");
|
||||||
|
given(response.getHeaders()).willReturn(headers);
|
||||||
|
|
||||||
|
assertFalse(handler.hasError(response));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue