Mockito.verify(this.conn, Mockito.never()).suspendInput();
}
@Test
public void testRequestContentCompleted() throws Exception {
HttpExchange httpExchange = this.protocolHandler.new HttpExchange();
HttpContext exchangeContext = httpExchange.getContext();
BasicHttpEntityEnclosingRequest request = new BasicHttpEntityEnclosingRequest("POST", "/",
HttpVersion.HTTP_1_1);
httpExchange.setRequestState(MessageState.BODY_STREAM);
httpExchange.setRequest(request);
httpExchange.setRequestConsumer(this.requestConsumer);
httpExchange.setRequestHandler(this.requestHandler);
this.connContext.setAttribute(HttpAsyncServiceHandler.HTTP_EXCHANGE, httpExchange);
Mockito.when(this.decoder.isCompleted()).thenReturn(true);
Mockito.when(this.requestConsumer.getException()).thenReturn(null);
Object data = new Object();
Mockito.when(this.requestConsumer.getResult()).thenReturn(data);
Mockito.when(this.requestHandler.handle(
Mockito.eq(data),
Mockito.any(HttpAsyncResponseTrigger.class),
Mockito.eq(exchangeContext))).thenReturn(this.cancellable);
this.protocolHandler.inputReady(conn, this.decoder);
Assert.assertEquals(MessageState.COMPLETED, httpExchange.getRequestState());
Assert.assertEquals(MessageState.READY, httpExchange.getResponseState());
Mockito.verify(this.requestConsumer).consumeContent(this.decoder, this.conn);
Mockito.verify(this.conn).suspendInput();
Mockito.verify(this.requestConsumer).requestCompleted(exchangeContext);
Mockito.verify(this.requestHandler).handle(
Mockito.eq(data),
Mockito.any(HttpAsyncResponseTrigger.class),
Mockito.eq(exchangeContext));
Assert.assertSame(this.cancellable, httpExchange.getAsyncProcess());
}