public static void TestStreamSeek() { DebugStream stm = StmInit("01234"); Assert.AreEqual(5, stm.Seek(0, SeekOrigin.Current)); Assert.AreEqual(5, stm.Seek(0, SeekOrigin.End)); byte[] rgb = new byte[1]; Assert.AreEqual(0, stm.Read(rgb, 0, 1)); Assert.AreEqual(0, stm.Seek(0, SeekOrigin.Begin)); Assert.AreEqual(1, stm.Read(rgb, 0, 1)); Assert.AreEqual(1, stm.Seek(0, SeekOrigin.Current)); Assert.AreEqual(Encoding.UTF8.GetBytes("0"), rgb); Assert.AreEqual(4, stm.Seek(-1, SeekOrigin.End)); Assert.AreEqual(1, stm.Read(rgb, 0, 1)); Assert.AreEqual(5, stm.Seek(0, SeekOrigin.Current)); Assert.AreEqual(Encoding.UTF8.GetBytes("4"), rgb); Assert.AreEqual(3, stm.Seek(-2, SeekOrigin.Current)); Assert.AreEqual(1, stm.Read(rgb, 0, 1)); Assert.AreEqual(4, stm.Seek(0, SeekOrigin.Current)); Assert.AreEqual(Encoding.UTF8.GetBytes("3"), rgb); }
public static void TestStreamWriteBasicWrite() { DebugStream stm = StmInit("test"); Assert.AreEqual(4, stm.Length); Assert.AreEqual(4, stm.Position); Assert.AreEqual(4, stm.Seek(0, SeekOrigin.End)); }
public static void TestStreamReadBasicRead() { DebugStream stm = StmInit("test"); stm.Seek(0, SeekOrigin.Begin); byte[] rgb = new byte[4]; Assert.AreEqual(4, stm.Read(rgb, 0, 4)); Assert.AreEqual(Encoding.UTF8.GetBytes("test"), rgb); }
public static void TestStmCreateFromString(string sIn, byte[] rgbExpected) { DebugStream stm = StmCreateFromString(sIn); stm.Seek(0, SeekOrigin.Begin); Assert.AreEqual(rgbExpected.Length, stm.Length); byte[] rgbRead = new byte[rgbExpected.Length]; stm.Read(rgbRead, 0, rgbExpected.Length); Assert.AreEqual(rgbExpected, rgbRead); }
public static void TestStreamWrite_SeekBack_WriteNoGrowFile() { DebugStream stm = StmInit("0123456789"); stm.Seek(-4, SeekOrigin.Current); byte[] rgbWrite = new byte[2] { 65, 66 }; stm.Write(rgbWrite, 0, 2); Assert.AreEqual(8, stm.Position); Assert.AreEqual(10, stm.Length); stm.Position = 0; byte[] rgbExpected = Encoding.UTF8.GetBytes("012345AB89"); byte[] rgbRead = new byte[10]; Assert.AreEqual(10, stm.Read(rgbRead, 0, 10)); Assert.AreEqual(rgbExpected, rgbRead); }
public static void TestStreamWrite_SeekBack_WriteGrowFile() // check that length and position are correct { DebugStream stm = StmInit("0123456789"); stm.Seek(-2, SeekOrigin.Current); byte[] rgbWrite = new byte[3] { 65, 66, 67 }; stm.Write(rgbWrite, 0, 3); Assert.AreEqual(11, stm.Position); Assert.AreEqual(11, stm.Length); stm.Position = 0; byte[] rgbExpected = Encoding.UTF8.GetBytes("01234567ABC"); byte[] rgbRead = new byte[11]; Assert.AreEqual(11, stm.Read(rgbRead, 0, 11)); Assert.AreEqual(rgbExpected, rgbRead); }