### Question:
PostgresTypeConverter extends AbstractTypeConverter { @Override public DataType getDataType(String columnTypeString, Boolean autoIncrement) { DataType type = super.getDataType(columnTypeString, autoIncrement); if (type.getDataTypeName().toLowerCase().contains("text")) { type = getClobType(); } else if (type.getDataTypeName().toLowerCase().contains("blob")) { type = getBlobType(); } else if (type.getDataTypeName().toLowerCase().startsWith("float8")) { type.setDataTypeName("FLOAT8"); } else if (type.getDataTypeName().toLowerCase().startsWith("float4")) { type.setDataTypeName("FLOAT4"); } if (autoIncrement != null && autoIncrement) { if ("integer".equals(type.getDataTypeName().toLowerCase())) { type.setDataTypeName("serial"); } else if ("bigint".equals(type.getDataTypeName().toLowerCase()) || "bigserial".equals(type.getDataTypeName().toLowerCase())) { type.setDataTypeName("bigserial"); } else { type.setDataTypeName("serial"); } } return type; }  int getPriority(); boolean supports(Database database); @Override Object convertDatabaseValueToObject(Object defaultValue, int dataType, int columnSize, int decimalDigits, Database database); @Override DataType getDataType(String columnTypeString, Boolean autoIncrement); @Override ClobType getClobType(); @Override BlobType getBlobType(); @Override DateTimeType getDateTimeType(); @Override NumberType getNumberType(); @Override TinyIntType getTinyIntType(); @Override DoubleType getDoubleType();  }### Answer:
@Test public void getColumnType_BigSerial_AutoIncrement() { assertEquals("bigserial", new PostgresTypeConverter().getDataType("bigserial", true).toString()); }
@Test public void getColumnType_BigInt_AutoIncrement() { assertEquals("bigserial", new PostgresTypeConverter().getDataType("bigint", true).toString()); }
@Test public void getColumnType_TinyText() { assertEquals("TEXT", new PostgresTypeConverter().getDataType("TINYTEXT", false).toString()); }
@Test public void getColumnType_Text() { assertEquals("TEXT", new PostgresTypeConverter().getDataType("TEXT", false).toString()); }
@Test public void getColumnType_MediumText() { assertEquals("TEXT", new PostgresTypeConverter().getDataType("MEDIUMTEXT", false).toString()); }
@Test public void getColumnType_LongText() { assertEquals("TEXT", new PostgresTypeConverter().getDataType("LONGTEXT", false).toString()); }
@Test public void getColumnType_TinyBlob() { assertEquals("BYTEA", new PostgresTypeConverter().getDataType("TINYBLOB", false).toString()); }
@Test public void getColumnType_Blob() { assertEquals("BYTEA", new PostgresTypeConverter().getDataType("BLOB", false).toString()); }
@Test public void getColumnType_MediumBlob() { assertEquals("BYTEA", new PostgresTypeConverter().getDataType("MEDIUMBLOB", false).toString()); }
@Test public void getColumnType_LongBlob() { assertEquals("BYTEA", new PostgresTypeConverter().getDataType("LONGBLOB", false).toString()); }