@@ -284,7 +284,7 @@ public void onResponseComplete(HttpStreamBase stream, int errorCode) {
284284 * Tests that makeRequest throws IllegalStateException when called with both
285285 * a body stream and useManualDataWrites=true on an HTTP/1.1 connection.
286286 */
287- @ Test ( expected = IllegalStateException . class )
287+ @ Test
288288 public void testHttp1MakeRequestWithBodyStreamAndManualWrites () throws Exception {
289289 skipIfAndroid ();
290290 skipIfLocalhostUnavailable ();
@@ -304,46 +304,26 @@ public boolean sendRequestBody(ByteBuffer bodyBytesOut) {
304304 // Create request WITH body stream AND useManualDataWrites=true
305305 HttpRequest request = new HttpRequest ("PUT" , "/echo" , headers , bodyStream );
306306
307- CompletableFuture <Void > reqCompleted = new CompletableFuture <>();
308- TestHttpResponse response = new TestHttpResponse ();
309-
310- CompletableFuture <Void > shutdownComplete ;
311307 try (HttpClientConnectionManager connPool = createConnectionPoolManager (uri , HttpVersion .HTTP_1_1 )) {
312- shutdownComplete = connPool .getShutdownCompleteFuture ();
313308 try (HttpClientConnection conn = connPool .acquireConnection ().get (60 , TimeUnit .SECONDS )) {
314309
315310 HttpStreamResponseHandler streamHandler = new HttpStreamResponseHandler () {
316311 @ Override
317312 public void onResponseHeaders (HttpStream stream , int responseStatusCode , int blockType ,
318- HttpHeader [] nextHeaders ) {
319- response .statusCode = responseStatusCode ;
320- response .headers .addAll (Arrays .asList (nextHeaders ));
321- }
322-
313+ HttpHeader [] nextHeaders ) {}
323314 @ Override
324- public int onResponseBody (HttpStream stream , byte [] bodyBytesIn ) {
325- response .bodyBuffer .put (bodyBytesIn );
326- return bodyBytesIn .length ;
327- }
328-
315+ public int onResponseBody (HttpStream stream , byte [] bodyBytesIn ) { return bodyBytesIn .length ; }
329316 @ Override
330- public void onResponseComplete (HttpStream stream , int errorCode ) {
331- response .onCompleteErrorCode = errorCode ;
332- reqCompleted .complete (null );
333- }
317+ public void onResponseComplete (HttpStream stream , int errorCode ) {}
334318 };
335319
336- HttpStream stream = conn .makeRequest (request , streamHandler , true );
337- stream .activate ();
338-
339- stream .writeData ("hello" .getBytes (StandardCharsets .UTF_8 ), true , null );
340-
341- reqCompleted .get (60 , TimeUnit .SECONDS );
342- stream .close ();
320+ try {
321+ conn .makeRequest (request , streamHandler , true );
322+ Assert .fail ("Expected IllegalStateException from makeRequest" );
323+ } catch (IllegalStateException e ) {
324+ Assert .assertTrue (e .getMessage ().contains ("manual data writes" ));
325+ }
343326 }
344327 }
345-
346- shutdownComplete .get (60 , TimeUnit .SECONDS );
347- CrtResource .waitForNoResources ();
348328 }
349329}
0 commit comments