var expectedBytes = new byte[] {1, 2, 3, 4, 5};
Stream stream = new MemoryStream(expectedBytes);
var networkConnection = new NetworkConnection(stream);
var mockObserver = new Mock<IObserver<byte[]>>();
var scheduler = new TestScheduler();
using (networkConnection.Read(5)
.ObserveOn(scheduler)
.Subscribe(mockObserver.Object))
{
scheduler.Start();
mockObserver.Verify(observer => observer.OnNext(expectedBytes));
}