public void VirtualNetworkStream_ReadMoreThanWrite_Ok()
{
var network = new VirtualNetwork();
using (var client = new VirtualNetworkStream(network, isServer: false))
using (var server = new VirtualNetworkStream(network, isServer: true))
{
var writeFrame = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int frame1Len = writeFrame.Length / 2;
client.Write(writeFrame, 0, frame1Len);
client.Write(writeFrame, frame1Len, writeFrame.Length - frame1Len);
int expectedReceivedBytes = writeFrame.Length;
var readFrame = new byte[expectedReceivedBytes];
int bytesRead = 0;
do
{
bytesRead += server.Read(readFrame, bytesRead, expectedReceivedBytes - bytesRead);
}while (bytesRead < expectedReceivedBytes);
Assert.Equal(writeFrame, readFrame);
}
}