Пример #1
0
 public void ReadUnnaffectedByReadPrevious()
 {
     var str = "abcdefghijkl";
     using (var ms = new MemoryStream(Encoding.UTF8.GetBytes(str)))
     using (var bs = new BencodeStream(ms))
     {
         Assert.AreEqual('a', bs.Read());
         bs.ReadPrevious();
         Assert.AreEqual('b', bs.Read());
     }
 }
Пример #2
0
 public void ReadPreviousAtStartOfStream()
 {
     var str = "Hello World!";
     using (var ms = new MemoryStream(Encoding.UTF8.GetBytes(str)))
     using (var bs = new BencodeStream(ms))
     {
         Assert.AreEqual(-1, bs.ReadPrevious());
     }
 }
Пример #3
0
 public void ReadPreviousUnaffectedByPeek()
 {
     var str = "Hello World!";
     using (var ms = new MemoryStream(Encoding.UTF8.GetBytes(str)))
     using (var bs = new BencodeStream(ms))
     {
         bs.Read(1);
         Assert.AreEqual('H', bs.ReadPrevious());
         Assert.AreEqual('e', bs.Peek());
         Assert.AreEqual('H', bs.ReadPrevious());
     }
 }
Пример #4
0
        public void ReadPrevious()
        {
            var str = "Hello World!";
            using (var ms = new MemoryStream(Encoding.UTF8.GetBytes(str)))
            using (var bs = new BencodeStream(ms))
            {
                Assert.AreEqual(-1, bs.ReadPrevious());
                Assert.AreEqual('H', bs.Read());
                Assert.AreEqual('H', bs.ReadPrevious());
                Assert.AreEqual('e', bs.Read());
                Assert.AreEqual('e', bs.ReadPrevious());

                bs.Position = 20;

                Assert.AreEqual(-1, bs.ReadPrevious());
            }
        }