in computer-test/src/main/java/org/apache/hugegraph/computer/core/network/buffer/NetworkBufferTest.java [101:153]
public void testCopyToByteArray() {
String testData = "test data";
byte[] bytesSource = StringEncoding.encode(testData);
ByteBuffer byteBuffer = ByteBuffer.allocateDirect(bytesSource.length);
byteBuffer = byteBuffer.put(bytesSource);
byteBuffer.flip();
NioBuffer nioManagedBuffer = new NioBuffer(byteBuffer);
byte[] bytes = nioManagedBuffer.copyToByteArray();
Assert.assertArrayEquals(bytesSource, bytes);
Assert.assertNotSame(bytesSource, bytes);
ByteBuffer byteBuffer2 = ByteBuffer.allocate(bytesSource.length);
byteBuffer2 = byteBuffer2.put(bytesSource);
byteBuffer2.flip();
int position = byteBuffer2.position();
int remaining = byteBuffer2.remaining();
NioBuffer nioManagedBuffer2 = new NioBuffer(byteBuffer2);
byte[] bytes2 = nioManagedBuffer2.copyToByteArray();
Assert.assertArrayEquals(bytesSource, bytes2);
Assert.assertNotSame(bytesSource, bytes2);
Assert.assertEquals(position, byteBuffer2.position());
Assert.assertEquals(remaining, byteBuffer2.remaining());
ByteBuf buf3 = Unpooled.directBuffer(bytesSource.length);
try {
buf3 = buf3.writeBytes(bytesSource);
int readerIndex = buf3.readerIndex();
int readableBytes = buf3.readableBytes();
NettyBuffer nettyManagedBuffer3 =
new NettyBuffer(buf3);
byte[] bytes3 = nettyManagedBuffer3.copyToByteArray();
Assert.assertArrayEquals(bytesSource, bytes3);
Assert.assertNotSame(bytesSource, bytes3);
Assert.assertEquals(readerIndex, buf3.readerIndex());
Assert.assertEquals(readableBytes, buf3.readableBytes());
} finally {
buf3.release();
}
ByteBuf buf4 = Unpooled.buffer(bytesSource.length);
try {
buf4 = buf4.writeBytes(bytesSource);
NettyBuffer nettyManagedBuffer4 =
new NettyBuffer(buf4);
byte[] bytes4 = nettyManagedBuffer4.copyToByteArray();
Assert.assertArrayEquals(bytesSource, bytes4);
Assert.assertNotSame(bytesSource, bytes4);
} finally {
buf4.release();
}
}