public void CircularBuffer_ReadBlock()
        {
            CircularBuffer<byte> cb = new CircularBuffer<byte>(50);

            // Move the pointer to the middle
            cb.Produce(25);
            cb.Consume(25);

            // Now allocate all space
            cb.Produce(25);
            cb.Produce(25);

            Assert.AreEqual(25, cb.ReadLength);
            Assert.AreEqual(25, cb.GetReadBlock(0));
            Assert.AreEqual(20, cb.GetReadBlock(5));
            Assert.AreEqual(1, cb.GetReadBlock(24));
            Assert.AreEqual(25, cb.GetReadBlock(25));
            Assert.AreEqual(20, cb.GetReadBlock(30));
            Assert.AreEqual(1, cb.GetReadBlock(49));
            Assert.AreEqual(0, cb.GetReadBlock(50));
        }