Exemplo n.º 1
0
        public void RereaderTest()
        {
            var n = 10000;
            var q = new Queue <byte[]>(n);
            var r = new Rereader();

            for (int i = 0; i < n; i++)
            {
                var b = RandBytes(100);
                using (var ms = new MemoryStream(b)) {
                    r.Reread(ms, b.Length);
                }
                q.Enqueue(b);
            }

            for (var i = 0; i < n; i++)
            {
                var raw    = q.Dequeue();
                var b      = new byte[raw.Length];
                var offset = 0;
                var remind = raw.Length;
                while (remind > 0)
                {
                    var size = rand.Next(remind + 1);
                    if (size == 0)
                    {
                        continue;
                    }
                    r.Pull(b, offset, size);
                    offset = offset + size;
                    remind = remind - size;
                }
                Assert.True(BytesEquals(raw, b));
            }
        }
Exemplo n.º 2
0
        public SnetStream(int size, bool enableCrypt)
        {
            _EnableCrypt = enableCrypt;
            _Rewriter    = new Rewriter(size);
            _Rereader    = new Rereader();

            ConnectTimeout = 10000;
        }
Exemplo n.º 3
0
 public SnetStream(int size, bool enableCrypt)
 {
     _EnableCrypt = enableCrypt;
     _Rewriter    = new Rewriter(size);
     _Rereader    = new Rereader();
 }