public async Task Written_bytes_can_be_retrieved() { using (var stream = new LoopbackTcpStream()) { var bytes = new byte[] { 1, 2, 3, 4, 5 }; await stream.WriteAsync(bytes, 0, bytes.Length).ConfigureAwait(true); stream.GetAllWrittenBytes().Should().Equal(1, 2, 3, 4, 5); } }
public async Task Proxy_streams_in_both_directions() { using (var clientStream = new LoopbackTcpStream(1, 2, 3, 4, 5)) using (var remoteStream = new LoopbackTcpStream(10, 9, 8, 7, 6)) { var connector = remoteStream.GetConnector(); clientStream.Write(200, 199, 198, 197, 196); remoteStream.Write(100, 99, 98, 97, 96); clientStream.CloseStagedBytesSender(); remoteStream.CloseStagedBytesSender(); using (var proxy = new TcpProxy( clientStream, FakeEndPoints.CreateRemote(), connector, this._bufferPool)) { await proxy.RunAsync(CancellationToken.None).ConfigureAwait(true); } clientStream.GetAllWrittenBytes().Should().Equal(200, 199, 198, 197, 196, 10, 9, 8, 7, 6); remoteStream.GetAllWrittenBytes().Should().Equal(100, 99, 98, 97, 96, 1, 2, 3, 4, 5); } }