コード例 #1
0
ファイル: PeekableStreamTests.cs プロジェクト: biorpg/RT.Util
        public void TestPeekableStreamRead()
        {
            var inputStr = "← ↔ →";
            var buffer   = inputStr.ToUtf8();

            for (int i = 1; i <= buffer.Length; i++)
            {
                using (var mem = new MemoryStream(buffer))
                    using (var slow = new SlowStream(mem, i))
                        using (var peekable = new PeekableStream(slow))
                        {
                            using (var peek = peekable.GetPeekStream())
                            {
                                var buf = peek.Read(11);
                                Assert.AreEqual(inputStr, buf.FromUtf8());
                                Assert.AreEqual(0, peek.Read(buf, 0, 1));
                            }
                            var buf2 = peekable.Read(11);
                            Assert.AreEqual(inputStr, buf2.FromUtf8());
                            Assert.AreEqual(0, peekable.Read(buf2, 0, 1));
                            using (var peek = peekable.GetPeekStream())
                                Assert.AreEqual(0, peek.Read(buf2, 0, 1));
                        }
            }
        }
コード例 #2
0
 public void TestSingleBytePeekableStreamRead()
 {
     using (var mem = new MemoryStream(new byte[] { 47 }))
     using (var peekable = new PeekableStream(mem))
     {
         var buf = new byte[1];
         using (var peek = peekable.GetPeekStream())
         {
             Assert.AreEqual(1, peek.Read(buf, 0, 1));
             Assert.AreEqual(buf[0], 47);
             Assert.AreEqual(0, peek.Read(buf, 0, 1));
         }
         Assert.AreEqual(1, peekable.Read(buf, 0, 1));
         Assert.AreEqual(buf[0], 47);
         Assert.AreEqual(0, peekable.Read(buf, 0, 1));
         using (var peek = peekable.GetPeekStream())
             Assert.AreEqual(0, peek.Read(buf, 0, 1));
     }
 }
コード例 #3
0
 public void TestEmptyPeekableStreamRead()
 {
     using (var mem = new MemoryStream(new byte[0]))
     using (var peekable = new PeekableStream(mem))
     {
         using (var peek = peekable.GetPeekStream())
             Assert.AreEqual(0, peek.Read(new byte[1], 0, 1));
         Assert.AreEqual(0, peekable.Read(new byte[1], 0, 1));
     }
 }
コード例 #4
0
ファイル: PeekableStreamTests.cs プロジェクト: biorpg/RT.Util
 public void TestSingleBytePeekableStreamRead()
 {
     using (var mem = new MemoryStream(new byte[] { 47 }))
         using (var peekable = new PeekableStream(mem))
         {
             var buf = new byte[1];
             using (var peek = peekable.GetPeekStream())
             {
                 Assert.AreEqual(1, peek.Read(buf, 0, 1));
                 Assert.AreEqual(buf[0], 47);
                 Assert.AreEqual(0, peek.Read(buf, 0, 1));
             }
             Assert.AreEqual(1, peekable.Read(buf, 0, 1));
             Assert.AreEqual(buf[0], 47);
             Assert.AreEqual(0, peekable.Read(buf, 0, 1));
             using (var peek = peekable.GetPeekStream())
                 Assert.AreEqual(0, peek.Read(buf, 0, 1));
         }
 }
コード例 #5
0
ファイル: PeekableStreamTests.cs プロジェクト: biorpg/RT.Util
 public void TestEmptyPeekableStreamRead()
 {
     using (var mem = new MemoryStream(new byte[0]))
         using (var peekable = new PeekableStream(mem))
         {
             using (var peek = peekable.GetPeekStream())
                 Assert.AreEqual(0, peek.Read(new byte[1], 0, 1));
             Assert.AreEqual(0, peekable.Read(new byte[1], 0, 1));
         }
 }
コード例 #6
0
 public void TestPeekableStreamRead()
 {
     var inputStr = "← ↔ →";
     var buffer = inputStr.ToUtf8();
     for (int i = 1; i <= buffer.Length; i++)
     {
         using (var mem = new MemoryStream(buffer))
         using (var slow = new SlowStream(mem, i))
         using (var peekable = new PeekableStream(slow))
         {
             using (var peek = peekable.GetPeekStream())
             {
                 var buf = peek.Read(11);
                 Assert.AreEqual(inputStr, buf.FromUtf8());
                 Assert.AreEqual(0, peek.Read(buf, 0, 1));
             }
             var buf2 = peekable.Read(11);
             Assert.AreEqual(inputStr, buf2.FromUtf8());
             Assert.AreEqual(0, peekable.Read(buf2, 0, 1));
             using (var peek = peekable.GetPeekStream())
                 Assert.AreEqual(0, peek.Read(buf2, 0, 1));
         }
     }
 }