private void checkPage(Schema schema, Page page, final Object... objects) {
this.reader = new PageReader(schema);
reader.setPage(page);
int idx = 0;
while (idx < objects.length && reader.nextRecord()) {
for (int column = 0; column < reader.getSchema().getColumnCount(); ++column) {
Object value = objects[idx++];
if (value == null) {
assertEquals(true, reader.isNull(column));
} else if (value instanceof Boolean) {
assertEquals(value, reader.getBoolean(column));
} else if (value instanceof Double) {
assertEquals(value, reader.getDouble(column));
} else if (value instanceof Long) {
assertEquals(value, reader.getLong(column));
} else if (value instanceof String) {
assertEquals(value, reader.getString(column));
} else if (value instanceof Timestamp) {
assertEquals(value, reader.getTimestamp(column));
} else if (value instanceof Value) {
assertEquals(value, reader.getJson(column));
} else {
throw new IllegalStateException(
"Unsupported type in test utils: "
+ value.toString());
}
}
}
}