private async Task OnReceiveRequestAsync(Guid id, ReceiveRequest request) { // request is done, we can handle it if (_requestHandler != null) { var response = await _requestHandler.ProcessRequestAsync(request, null, context : _handlerContext).ConfigureAwait(false); if (response != null) { await _sendOperations.SendResponseAsync(id, response).ConfigureAwait(false); } } }
public async Task SendResponseAsync() { var sender = new PayloadSender(); var transport = new MockTransportSender(); sender.Connect(transport); var ops = new SendOperations(sender); var content = new StringContent("/a/b", Encoding.ASCII); var response = StreamingResponse.CreateResponse(HttpStatusCode.OK, content); await ops.SendResponseAsync(Guid.NewGuid(), response); Assert.Equal(4, transport.Buffers.Count); }