protected <T> void assertBlock(Block block, Supplier<BlockBuilder> newBlockBuilder, T[] expectedValues)
{
assertBlockPositions(block, newBlockBuilder, expectedValues);
assertBlockPositions(copyBlockViaBlockSerde(block), newBlockBuilder, expectedValues);
assertBlockPositions(copyBlockViaWritePositionTo(block, newBlockBuilder), newBlockBuilder, expectedValues);
if (expectedValues.getClass().getComponentType().isArray() ||
expectedValues.getClass().getComponentType() == List.class ||
expectedValues.getClass().getComponentType() == Map.class) {
assertBlockPositions(copyBlockViaWriteStructure(block, newBlockBuilder), newBlockBuilder, expectedValues);
}
assertBlockSize(block);
assertRetainedSize(block);
try {
block.isNull(-1);
fail("expected IllegalArgumentException");
}
catch (IllegalArgumentException expected) {
}
try {
block.isNull(block.getPositionCount());
fail("expected IllegalArgumentException");
}
catch (IllegalArgumentException expected) {
}
}