Example #1
0
        public void TestShrink2()
        {
            IoBuffer buf = IoBuffer.Allocate(36);

            buf.Put(Encoding.Default.GetBytes("012345"));
            buf.Flip();
            buf.Position        = 4;
            buf.MinimumCapacity = 8;

            IoBuffer newBuf = buf.Shrink();

            Assert.AreEqual(4, newBuf.Position);
            Assert.AreEqual(6, newBuf.Limit);
            Assert.AreEqual(9, newBuf.Capacity);
            Assert.AreEqual(8, newBuf.MinimumCapacity);

            buf = IoBuffer.Allocate(6);
            buf.Put(Encoding.Default.GetBytes("012345"));
            buf.Flip();
            buf.Position = 4;

            newBuf = buf.Shrink();
            Assert.AreEqual(4, newBuf.Position);
            Assert.AreEqual(6, newBuf.Limit);
            Assert.AreEqual(6, newBuf.Capacity);
            Assert.AreEqual(6, newBuf.MinimumCapacity);
        }
Example #2
0
        public void TestShrink()
        {
            IoBuffer buf = IoBuffer.Allocate(36);

            buf.MinimumCapacity = 0;

            buf.Limit = 18;
            buf.Shrink();
            Assert.AreEqual(18, buf.Capacity);

            buf.Limit = 9;
            buf.Shrink();
            Assert.AreEqual(9, buf.Capacity);

            buf.Limit = 4;
            buf.Shrink();
            Assert.AreEqual(4, buf.Capacity);

            buf.Limit = 2;
            buf.Shrink();
            Assert.AreEqual(2, buf.Capacity);

            buf.Limit = 1;
            buf.Shrink();
            Assert.AreEqual(1, buf.Capacity);

            buf.Limit = 0;
            buf.Shrink();
            Assert.AreEqual(0, buf.Capacity);
        }
Example #3
0
 /// <inheritdoc/>
 public override IoBuffer Shrink()
 {
     _buf.Shrink();
     return(this);
 }