### Question:
ExampleRecordSet implements RecordSet { @Override public List<Type> getColumnTypes() { return columnTypes; } ExampleRecordSet(ExampleSplit split, List<ExampleColumnHandle> columnHandles); @Override List<Type> getColumnTypes(); @Override RecordCursor cursor();  }### Answer:
@Test public void testGetColumnTypes() { RecordSet recordSet = new ExampleRecordSet(new ExampleSplit(dataUri), ImmutableList.of( new ExampleColumnHandle("text", createUnboundedVarcharType(), 0), new ExampleColumnHandle("value", BIGINT, 1))); assertEquals(recordSet.getColumnTypes(), ImmutableList.of(createUnboundedVarcharType(), BIGINT)); recordSet = new ExampleRecordSet(new ExampleSplit(dataUri), ImmutableList.of( new ExampleColumnHandle("value", BIGINT, 1), new ExampleColumnHandle("text", createUnboundedVarcharType(), 0))); assertEquals(recordSet.getColumnTypes(), ImmutableList.of(BIGINT, createUnboundedVarcharType())); recordSet = new ExampleRecordSet(new ExampleSplit(dataUri), ImmutableList.of( new ExampleColumnHandle("value", BIGINT, 1), new ExampleColumnHandle("value", BIGINT, 1), new ExampleColumnHandle("text", createUnboundedVarcharType(), 0))); assertEquals(recordSet.getColumnTypes(), ImmutableList.of(BIGINT, BIGINT, createUnboundedVarcharType())); recordSet = new ExampleRecordSet(new ExampleSplit(dataUri), ImmutableList.of()); assertEquals(recordSet.getColumnTypes(), ImmutableList.of()); }