public void TestCopyingToOutputStream() { IByteBuffer buf1 = Unpooled.DirectBuffer(10); IByteBuffer buf2 = Unpooled.Buffer(10); IByteBuffer buf3 = Unpooled.DirectBuffer(10); buf1.WriteBytes(Encoding.ASCII.GetBytes("a")); buf2.WriteBytes(Encoding.ASCII.GetBytes("b")); buf3.WriteBytes(Encoding.ASCII.GetBytes("c")); IByteBuffer composite = Unpooled.WrappedUnmodifiableBuffer(buf1, buf2, buf3); IByteBuffer copy = Unpooled.DirectBuffer(3); IByteBuffer copy2 = Unpooled.Buffer(3); var copyStream = new ByteBufferStream(copy); var copy2Stream = new ByteBufferStream(copy2); try { composite.GetBytes(0, copyStream, 3); composite.GetBytes(0, copy2Stream, 3); Assert.Equal(0, ByteBufferUtil.Compare(copy, composite)); Assert.Equal(0, ByteBufferUtil.Compare(copy2, composite)); Assert.Equal(0, ByteBufferUtil.Compare(copy, copy2)); } finally { copy.Release(); copy2.Release(); copyStream.Close(); copy2Stream.Close(); composite.Release(); } }
public void TestExtractNioBuffers() { IByteBuffer buf1 = Unpooled.DirectBuffer(10); IByteBuffer buf2 = Unpooled.Buffer(10); IByteBuffer buf3 = Unpooled.DirectBuffer(10); buf1.WriteBytes(Encoding.ASCII.GetBytes("a")); buf2.WriteBytes(Encoding.ASCII.GetBytes("b")); buf3.WriteBytes(Encoding.ASCII.GetBytes("c")); IByteBuffer composite = Unpooled.WrappedUnmodifiableBuffer(buf1, buf2, buf3); var byteBuffers = composite.GetIoBuffers(0, 3); Assert.Equal(3, byteBuffers.Length); Assert.Single(byteBuffers[0]); Assert.Single(byteBuffers[1]); Assert.Single(byteBuffers[2]); composite.Release(); }
public void TestCopyingToOtherBuffer() { IByteBuffer buf1 = Unpooled.DirectBuffer(10); IByteBuffer buf2 = Unpooled.Buffer(10); IByteBuffer buf3 = Unpooled.DirectBuffer(10); buf1.WriteBytes(Encoding.ASCII.GetBytes("a")); buf2.WriteBytes(Encoding.ASCII.GetBytes("b")); buf3.WriteBytes(Encoding.ASCII.GetBytes("c")); IByteBuffer composite = Unpooled.WrappedUnmodifiableBuffer(buf1, buf2, buf3); IByteBuffer copy = Unpooled.DirectBuffer(3); IByteBuffer copy2 = Unpooled.Buffer(3); copy.SetBytes(0, composite, 0, 3); copy2.SetBytes(0, composite, 0, 3); copy.SetWriterIndex(3); copy2.SetWriterIndex(3); Assert.Equal(0, ByteBufferUtil.Compare(copy, composite)); Assert.Equal(0, ByteBufferUtil.Compare(copy2, composite)); Assert.Equal(0, ByteBufferUtil.Compare(copy, copy2)); copy.Release(); copy2.Release(); composite.Release(); }