public void testReadSingleBytes() { var u = new UnionInputStream(); Assert.IsTrue(u.isEmpty()); u.add(new MemoryStream(new byte[] { 1, 0, 2 })); u.add(new MemoryStream(new byte[] { 3 })); u.add(new MemoryStream(new byte[] { 4, 5 })); Assert.IsFalse(u.isEmpty()); Assert.AreEqual(3, u.available()); Assert.AreEqual(1, u.read()); Assert.AreEqual(0, u.read()); Assert.AreEqual(2, u.read()); Assert.AreEqual(0, u.available()); Assert.AreEqual(3, u.read()); Assert.AreEqual(0, u.available()); Assert.AreEqual(4, u.read()); Assert.AreEqual(1, u.available()); Assert.AreEqual(5, u.read()); Assert.AreEqual(0, u.available()); Assert.AreEqual(-1, u.read()); Assert.IsTrue(u.isEmpty()); u.add(new MemoryStream(new byte[] { (byte)255 })); Assert.AreEqual(255, u.read()); Assert.AreEqual(-1, u.read()); Assert.IsTrue(u.isEmpty()); }
public void testEmptyStream() { var u = new UnionInputStream(); Assert.IsTrue(u.isEmpty()); Assert.AreEqual(-1, u.read()); Assert.AreEqual(-1, u.Read(new byte[1], 0, 1)); Assert.AreEqual(0, u.available()); Assert.AreEqual(0, u.skip(1)); u.Close(); }