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)); } }
public SnetStream(int size, bool enableCrypt) { _EnableCrypt = enableCrypt; _Rewriter = new Rewriter(size); _Rereader = new Rereader(); ConnectTimeout = 10000; }
public SnetStream(int size, bool enableCrypt) { _EnableCrypt = enableCrypt; _Rewriter = new Rewriter(size); _Rereader = new Rereader(); }