Check response code in SimpleClientHttpResponse::getBody
The error stream can be null with an empty body, so check the response code instead. Closes gh-33020
This commit is contained in:
@@ -49,7 +49,7 @@ class SimpleClientHttpResponseTests {
|
||||
@Test // SPR-14040
|
||||
public void shouldNotCloseConnectionWhenResponseClosed() throws Exception {
|
||||
TestByteArrayInputStream is = new TestByteArrayInputStream("Spring".getBytes(StandardCharsets.UTF_8));
|
||||
given(this.connection.getErrorStream()).willReturn(null);
|
||||
given(this.connection.getResponseCode()).willReturn(200);
|
||||
given(this.connection.getInputStream()).willReturn(is);
|
||||
|
||||
InputStream responseStream = this.response.getBody();
|
||||
@@ -64,7 +64,7 @@ class SimpleClientHttpResponseTests {
|
||||
public void shouldDrainStreamWhenResponseClosed() throws Exception {
|
||||
byte[] buf = new byte[6];
|
||||
TestByteArrayInputStream is = new TestByteArrayInputStream("SpringSpring".getBytes(StandardCharsets.UTF_8));
|
||||
given(this.connection.getErrorStream()).willReturn(null);
|
||||
given(this.connection.getResponseCode()).willReturn(200);
|
||||
given(this.connection.getInputStream()).willReturn(is);
|
||||
|
||||
InputStream responseStream = this.response.getBody();
|
||||
@@ -82,6 +82,7 @@ class SimpleClientHttpResponseTests {
|
||||
public void shouldDrainErrorStreamWhenResponseClosed() throws Exception {
|
||||
byte[] buf = new byte[6];
|
||||
TestByteArrayInputStream is = new TestByteArrayInputStream("SpringSpring".getBytes(StandardCharsets.UTF_8));
|
||||
given(this.connection.getResponseCode()).willReturn(404);
|
||||
given(this.connection.getErrorStream()).willReturn(is);
|
||||
|
||||
InputStream responseStream = this.response.getBody();
|
||||
@@ -98,6 +99,7 @@ class SimpleClientHttpResponseTests {
|
||||
@Test // SPR-16773
|
||||
public void shouldNotDrainWhenErrorStreamClosed() throws Exception {
|
||||
InputStream is = mock();
|
||||
given(this.connection.getResponseCode()).willReturn(404);
|
||||
given(this.connection.getErrorStream()).willReturn(is);
|
||||
willDoNothing().given(is).close();
|
||||
given(is.transferTo(any())).willCallRealMethod();
|
||||
@@ -115,7 +117,7 @@ class SimpleClientHttpResponseTests {
|
||||
@Test // SPR-17181
|
||||
public void shouldDrainResponseEvenIfResponseNotRead() throws Exception {
|
||||
TestByteArrayInputStream is = new TestByteArrayInputStream("SpringSpring".getBytes(StandardCharsets.UTF_8));
|
||||
given(this.connection.getErrorStream()).willReturn(null);
|
||||
given(this.connection.getResponseCode()).willReturn(200);
|
||||
given(this.connection.getInputStream()).willReturn(is);
|
||||
|
||||
this.response.close();
|
||||
|
||||
Reference in New Issue
Block a user