@Override
    public List<Type> getColumnTypes()
    {
        return columnTypes;
    }
@Test
    public void testGetColumnTypes()
    {
        Table table = getTable(CALL_CENTER.getName());
        List<Column> columns = ImmutableList.of(
                CC_CALL_CENTER_SK,  // Big Int
                CC_SQ_FT,           // Integer
                CC_NAME,            // Varchar
                CC_STATE,           // CharType
                CC_TAX_PERCENTAGE); // Decimal
        RecordSet recordSet = new TpcdsRecordSet(constructResults(table, session), columns);
        assertEquals(recordSet.getColumnTypes(), ImmutableList.of(
                BIGINT,
                INTEGER,
                createVarcharType(50),
                createCharType(2),
                createDecimalType(5, 2)));

        table = getTable(DBGEN_VERSION.getName());
        columns = ImmutableList.of(
                DV_CREATE_DATE, // Date
                DV_CREATE_TIME, // Time
                DV_VERSION);    // Varchar
        recordSet = new TpcdsRecordSet(constructResults(table, session), columns);
        assertEquals(recordSet.getColumnTypes(), ImmutableList.of(
                DATE,
                TIME,
                createVarcharType(16)));

        table = getTable(DBGEN_VERSION.getName());
        columns = ImmutableList.of();
        recordSet = new TpcdsRecordSet(constructResults(table, session), columns);
        assertEquals(recordSet.getColumnTypes(), ImmutableList.of());
    }