public void Dispose_aborts_pending_read() { var stream = new LoopbackTcpStream(); var readTask = stream.ReadAsync(new byte[1], 0, 1); stream.Dispose(); readTask.Awaiting(t => t).Should().Throw <Exception>(); }
public async Task Staging_bytes_makes_them_available_in_async_read() { using (var stream = new LoopbackTcpStream()) { stream.StageReadBytes(1, 2, 3); var buffer = new byte[10]; var readBytes = await stream.ReadAsync(buffer, 0, 3).ConfigureAwait(true); readBytes.Should().Be(3); buffer.Take(3).Should().Equal(1, 2, 3); } }