public void T2() { var arr = new byte[]{1,2,3,4,5}; var s = new BufferSegmentReadingStream(); s.BindBuffer(arr, 0, 3); Assert.AreEqual(3, s.Length); Assert.AreEqual(0, s.Position); Assert.AreEqual(1, s.ReadByte()); Assert.AreEqual(1, s.Position); Assert.AreEqual(2, s.ReadByte()); Assert.AreEqual(2, s.Position); Assert.AreEqual(3, s.ReadByte()); Assert.AreEqual(3, s.Position); Assert.AreEqual(-1, s.ReadByte()); Assert.AreEqual(3, s.Position); }
public void T8() { var arr = new byte[]{1,2,3,4,5}; var s = new BufferSegmentReadingStream(); s.BindBuffer(arr, 2, 3); Assert.AreEqual(3, s.Length); Assert.AreEqual(0, s.Position); Assert.AreEqual(3, s.ReadByte()); Assert.AreEqual(1, s.Position); Assert.AreEqual(4, s.ReadByte()); Assert.AreEqual(2, s.Position); Assert.AreEqual(5, s.ReadByte()); Assert.AreEqual(3, s.Position); Assert.AreEqual(-1, s.ReadByte()); Assert.AreEqual(3, s.Position); var arr2 = new byte[]{101,102,103,104,105,106,107,108,109,110}; s.BindBuffer(arr2, 2, 3); Assert.AreEqual(3, s.Length); Assert.AreEqual(0, s.Position); Assert.AreEqual(103, s.ReadByte()); Assert.AreEqual(1, s.Position); Assert.AreEqual(104, s.ReadByte()); Assert.AreEqual(2, s.Position); Assert.AreEqual(105, s.ReadByte()); Assert.AreEqual(3, s.Position); Assert.AreEqual(-1, s.ReadByte()); Assert.AreEqual(3, s.Position); }
public void T6() { var arr = new byte[]{1,2,3,4,5}; var s = new BufferSegmentReadingStream(); var ms = new MemoryStream(arr, 2, 3); s.BindBuffer(arr, 2, 3); Assert.AreEqual(3, ms.Length); Assert.AreEqual(3, s.Length); s.Seek(1, SeekOrigin.Current); ms.Seek(1, SeekOrigin.Current); Assert.AreEqual(1, ms.Position); Assert.AreEqual(4, ms.ReadByte()); Assert.AreEqual(1, s.Position); Assert.AreEqual(4, s.ReadByte()); s.Seek(-1, SeekOrigin.Current); ms.Seek(-1, SeekOrigin.Current); Assert.AreEqual(1, ms.Position); Assert.AreEqual(4, ms.ReadByte()); Assert.AreEqual(1, s.Position); Assert.AreEqual(4, s.ReadByte()); }