public void Read_SingleStream_ReadFromThePositionAfterTheEnd() { ConcatReadingStream s = Create(CreateCharStm('a', 'g')); s.Position = 10; CheckRead(s, 100, ""); }
public void Read_SingleStream_ReadFromMiddleOfTheStream_ReadMoreThanExists() { ConcatReadingStream s = Create(CreateCharStm('a', 'g')); s.Position = 4; CheckRead(s, 100, "ef"); }
public void Read_SingleStream_ReadExactlyFromTheEndOfTheStream() { ConcatReadingStream s = Create(CreateCharStm('a', 'g')); s.Position = 6; CheckRead(s, 100, ""); }
ConcatReadingStream Create(params MemoryStream[] streams) { ConcatReadingStream ret = new ConcatReadingStream(); ret.Update(streams); return(ret); }
public void Read_SingleStream_ReadFromMiddleOfTheStream() { ConcatReadingStream s = Create(CreateCharStm('a', 'g')); s.Position = 3; CheckRead(s, "def"); }
public void Read_TwoStreams_ReadExactlyWholeStream() { ConcatReadingStream s = Create( CreateCharStm('a', 'g'), CreateCharStm('o', 'u') ); CheckRead(s, 100, "abcdefopqrst"); }
void CheckRead(ConcatReadingStream stm, int bytesToRead, string expectation) { byte[] buf = new byte[bytesToRead]; long savePos = stm.Position; int read = stm.Read(buf, 0, bytesToRead); Assert.AreEqual(expectation.Length, read); Assert.AreEqual(expectation, Encoding.ASCII.GetString(buf, 0, read)); Assert.AreEqual(savePos + read, stm.Position); }
public void Read_TwoStreams_ReadFromTheMiddleOfTheSecondStream() { ConcatReadingStream s = Create( CreateCharStm('0', '7'), CreateCharStm('o', 'u') ); s.Position = 8; CheckRead(s, 2, "pq"); }
public void Read_TwoStreams_ReadFromTheMiddleOfTheFirstStreamToTheMiddleOfTheSecondStream() { ConcatReadingStream s = Create( CreateCharStm('0', '7'), CreateCharStm('o', 'u') ); s.Position = 4; CheckRead(s, 7, "456opqr"); }
public void Read_ThreeStreams_ReadOverTheSteamInTheMiddle() { ConcatReadingStream s = Create( CreateCharStm('0', '7'), CreateCharStm('a', 'f'), CreateCharStm('o', 'u') ); s.Position = 5; CheckRead(s, 10, "56abcdeopq"); }
public void Read_TwoStreams_ReadNothing() { ConcatReadingStream s = Create( CreateCharStm('0', '7'), CreateCharStm('o', 'u') ); s.Position = 8; CheckRead(s, 0, ""); Assert.AreEqual(s.Position, (long)8); }
void CheckRead(ConcatReadingStream stm, string expectation) { CheckRead(stm, expectation.Length, expectation); }