@Test
public void testAll() throws Exception {
Path file = createTmpFile();
Schema schema = createAllTypesSchema();
Tuple tuple = new VTuple(schema.size());
tuple.put(0, DatumFactory.createBool(true));
tuple.put(1, DatumFactory.createBit((byte)128));
tuple.put(2, DatumFactory.createChar('t'));
tuple.put(3, DatumFactory.createInt2((short)2048));
tuple.put(4, DatumFactory.createInt4(4096));
tuple.put(5, DatumFactory.createInt8(8192L));
tuple.put(6, DatumFactory.createFloat4(0.2f));
tuple.put(7, DatumFactory.createFloat8(4.1));
tuple.put(8, DatumFactory.createText(HELLO));
tuple.put(9, DatumFactory.createBlob(HELLO.getBytes(Charsets.UTF_8)));
tuple.put(10, NullDatum.get());
TajoParquetWriter writer = new TajoParquetWriter(file, schema);
writer.write(tuple);
writer.close();
TajoParquetReader reader = new TajoParquetReader(file, schema);
tuple = reader.read();
assertNotNull(tuple);
assertEquals(true, tuple.getBool(0));
assertEquals((byte)128, tuple.getByte(1));
assertTrue(String.valueOf('t').equals(String.valueOf(tuple.getChar(2))));
assertEquals((short)2048, tuple.getInt2(3));
assertEquals(4096, tuple.getInt4(4));
assertEquals(8192L, tuple.getInt8(5));
assertEquals(new Float(0.2f), new Float(tuple.getFloat4(6)));
assertEquals(new Double(4.1), new Double(tuple.getFloat8(7)));
assertTrue(HELLO.equals(tuple.getText(8)));
assertArrayEquals(HELLO.getBytes(Charsets.UTF_8), tuple.getBytes(9));
assertEquals(NullDatum.get(), tuple.get(10));
}