This is an automated email from the ASF dual-hosted git repository. bli pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/flink.git
The following commit(s) were added to refs/heads/master by this push: new 02bd5e1 [hotfix] [table] Refactor GenericInMemoryCatalogTest to prepare for moving common tests to CatalogTestBase (#8325) 02bd5e1 is described below commit 02bd5e1a9658f03d852ff158306b301bdd6d8868 Author: Bowen L <bowenl...@gmail.com> AuthorDate: Wed May 1 22:35:01 2019 -0700 [hotfix] [table] Refactor GenericInMemoryCatalogTest to prepare for moving common tests to CatalogTestBase (#8325) * [hotfix] [table] Refactor GenericInMemoryCatalogTest to prepare for moving common tests to CatalogTestBase --- .../hive/GenericHiveMetastoreCatalogTest.java | 6 ++ .../table/catalog/GenericInMemoryCatalogTest.java | 98 ++++++++++++---------- .../flink/table/catalog/CatalogTestBase.java | 7 ++ .../flink/table/catalog/CatalogTestUtil.java | 44 +--------- 4 files changed, 68 insertions(+), 87 deletions(-) diff --git a/flink-connectors/flink-connector-hive/src/test/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalogTest.java b/flink-connectors/flink-connector-hive/src/test/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalogTest.java index 642c1c2..315d657 100644 --- a/flink-connectors/flink-connector-hive/src/test/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalogTest.java +++ b/flink-connectors/flink-connector-hive/src/test/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalogTest.java @@ -80,4 +80,10 @@ public class GenericHiveMetastoreCatalogTest extends CatalogTestBase { // TODO: implement this once GenericHiveMetastoreCatalog support table operations return null; } + + @Override + public CatalogTable createAnotherTable() { + // TODO: implement this once GenericHiveMetastoreCatalog support table operations + return null; + } } diff --git a/flink-table/flink-table-api-java/src/test/java/org/apache/flink/table/catalog/GenericInMemoryCatalogTest.java b/flink-table/flink-table-api-java/src/test/java/org/apache/flink/table/catalog/GenericInMemoryCatalogTest.java index 50d203a..8bb7c66 100644 --- a/flink-table/flink-table-api-java/src/test/java/org/apache/flink/table/catalog/GenericInMemoryCatalogTest.java +++ b/flink-table/flink-table-api-java/src/test/java/org/apache/flink/table/catalog/GenericInMemoryCatalogTest.java @@ -31,6 +31,7 @@ import org.apache.flink.table.catalog.exceptions.TableAlreadyExistException; import org.apache.flink.table.catalog.exceptions.TableNotExistException; import org.apache.flink.table.catalog.exceptions.TableNotPartitionedException; import org.apache.flink.table.functions.ScalarFunction; +import org.apache.flink.table.plan.stats.TableStats; import org.junit.After; import org.junit.BeforeClass; @@ -80,25 +81,23 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { @Test public void testCreateTable_Streaming() throws Exception { catalog.createDatabase(db1, createDb(), false); - GenericCatalogTable table = createStreamingTable(); + CatalogTable table = createStreamingTable(); catalog.createTable(path1, table, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); } @Test public void testCreateTable_Batch() throws Exception { catalog.createDatabase(db1, createDb(), false); - CatalogDatabase database = catalog.getDatabase(db1); - assertTrue(TEST_COMMENT.equals(database.getDescription().get())); // Non-partitioned table - GenericCatalogTable table = createTable(); + CatalogTable table = createTable(); catalog.createTable(path1, table, false); CatalogBaseTable tableCreated = catalog.getTable(path1); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) tableCreated); + CatalogTestUtil.checkEquals(table, (CatalogTable) tableCreated); assertEquals(TABLE_COMMENT, tableCreated.getDescription().get()); List<String> tables = catalog.listTables(db1); @@ -112,7 +111,7 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { table = createPartitionedTable(); catalog.createTable(path1, table, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); tables = catalog.listTables(db1); @@ -132,7 +131,7 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { @Test public void testCreateTable_TableAlreadyExistException() throws Exception { catalog.createDatabase(db1, createDb(), false); - catalog.createTable(path1, CatalogTestUtil.createTable(TABLE_COMMENT), false); + catalog.createTable(path1, createTable(), false); exception.expect(TableAlreadyExistException.class); exception.expectMessage("Table (or view) db1.t1 already exists in Catalog"); @@ -143,14 +142,14 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { public void testCreateTable_TableAlreadyExist_ignored() throws Exception { catalog.createDatabase(db1, createDb(), false); - GenericCatalogTable table = CatalogTestUtil.createTable(TABLE_COMMENT); + CatalogTable table = createTable(); catalog.createTable(path1, table, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); catalog.createTable(path1, createAnotherTable(), true); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); } @Test @@ -170,10 +169,8 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { } @Test - public void testDropTable() throws Exception { + public void testDropTable_nonPartitionedTable() throws Exception { catalog.createDatabase(db1, createDb(), false); - - // Non-partitioned table catalog.createTable(path1, createTable(), false); assertTrue(catalog.tableExists(path1)); @@ -181,8 +178,11 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { catalog.dropTable(path1, false); assertFalse(catalog.tableExists(path1)); + } - // Partitioned table + @Test + public void testDropTable_partitionedTable() throws Exception { + catalog.createDatabase(db1, createDb(), false); catalog.createTable(path1, createPartitionedTable(), false); CatalogPartition catalogPartition = createPartition(); CatalogPartitionSpec catalogPartitionSpec = createPartitionSpec(); @@ -231,16 +231,16 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { catalog.createDatabase(db1, createDb(), false); // Non-partitioned table - GenericCatalogTable table = CatalogTestUtil.createTable(TABLE_COMMENT); + CatalogTable table = createTable(); catalog.createTable(path1, table, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); - GenericCatalogTable newTable = createAnotherTable(); + CatalogTable newTable = createAnotherTable(); catalog.alterTable(path1, newTable, false); assertNotEquals(table, catalog.getTable(path1)); - CatalogTestUtil.checkEquals(newTable, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(newTable, (CatalogTable) catalog.getTable(path1)); catalog.dropTable(path1, false); @@ -248,12 +248,12 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { table = createPartitionedTable(); catalog.createTable(path1, table, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); newTable = createAnotherPartitionedTable(); catalog.alterTable(path1, newTable, false); - CatalogTestUtil.checkEquals(newTable, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(newTable, (CatalogTable) catalog.getTable(path1)); } @Test @@ -272,35 +272,34 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { } @Test - public void testRenameTable() throws Exception { + public void testRenameTable_nonPartitionedTable() throws Exception { catalog.createDatabase(db1, createDb(), false); - - // Non-partitioned table - GenericCatalogTable table = createTable(); + CatalogTable table = createTable(); catalog.createTable(path1, table, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); catalog.renameTable(path1, t2, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path3)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path3)); assertFalse(catalog.tableExists(path1)); + } - catalog.dropTable(path3, false); - - // Partitioned table - table = createPartitionedTable(); + @Test + public void testRenameTable_partitionedTable() throws Exception { + catalog.createDatabase(db1, createDb(), false); + CatalogTable table = createPartitionedTable(); catalog.createTable(path1, table, false); CatalogPartition catalogPartition = createPartition(); CatalogPartitionSpec catalogPartitionSpec = createPartitionSpec(); catalog.createPartition(path1, catalogPartitionSpec, catalogPartition, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path1)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path1)); assertTrue(catalog.partitionExists(path1, catalogPartitionSpec)); catalog.renameTable(path1, t2, false); - CatalogTestUtil.checkEquals(table, (GenericCatalogTable) catalog.getTable(path3)); + CatalogTestUtil.checkEquals(table, (CatalogTable) catalog.getTable(path3)); assertTrue(catalog.partitionExists(path3, catalogPartitionSpec)); assertFalse(catalog.tableExists(path1)); assertFalse(catalog.partitionExists(path1, catalogPartitionSpec)); @@ -962,35 +961,44 @@ public class GenericInMemoryCatalogTest extends CatalogTestBase { } private GenericCatalogTable createStreamingTable() { - return CatalogTestUtil.createTable( + return new GenericCatalogTable( createTableSchema(), - getStreamingTableProperties(), TABLE_COMMENT); + new TableStats(0), + getStreamingTableProperties(), + TABLE_COMMENT); } @Override - public GenericCatalogTable createTable() { - return CatalogTestUtil.createTable( + public CatalogTable createTable() { + return new GenericCatalogTable( createTableSchema(), - getBatchTableProperties(), TABLE_COMMENT); + new TableStats(0), + getBatchTableProperties(), + TABLE_COMMENT); } - private GenericCatalogTable createAnotherTable() { - return CatalogTestUtil.createTable( + @Override + public CatalogTable createAnotherTable() { + return new GenericCatalogTable( createAnotherTableSchema(), - getBatchTableProperties(), TABLE_COMMENT); + new TableStats(0), + getBatchTableProperties(), + TABLE_COMMENT); } - protected GenericCatalogTable createPartitionedTable() { - return CatalogTestUtil.createPartitionedTable( + protected CatalogTable createPartitionedTable() { + return new GenericCatalogTable( createTableSchema(), + new TableStats(0), createPartitionKeys(), getBatchTableProperties(), TABLE_COMMENT); } - protected GenericCatalogTable createAnotherPartitionedTable() { - return CatalogTestUtil.createPartitionedTable( + protected CatalogTable createAnotherPartitionedTable() { + return new GenericCatalogTable( createAnotherTableSchema(), + new TableStats(0), createPartitionKeys(), getBatchTableProperties(), TABLE_COMMENT); diff --git a/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java index 83a8f2b..5457d34 100644 --- a/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java +++ b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java @@ -238,4 +238,11 @@ public abstract class CatalogTestBase { * @return a CatalogTable instance */ public abstract CatalogTable createTable(); + + /** + * Create another CatalogTable instance by specific catalog implementation. + * + * @return another CatalogTable instance + */ + public abstract CatalogTable createAnotherTable(); } diff --git a/flink-table/flink-table-api-java/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java similarity index 58% rename from flink-table/flink-table-api-java/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java rename to flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java index 33d1ea1..0700736 100644 --- a/flink-table/flink-table-api-java/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java +++ b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java @@ -18,16 +18,8 @@ package org.apache.flink.table.catalog; -import org.apache.flink.api.common.typeinfo.BasicTypeInfo; -import org.apache.flink.api.common.typeinfo.TypeInformation; -import org.apache.flink.api.java.typeutils.RowTypeInfo; -import org.apache.flink.table.api.TableSchema; import org.apache.flink.table.plan.stats.TableStats; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - import static org.junit.Assert.assertEquals; /** @@ -35,42 +27,10 @@ import static org.junit.Assert.assertEquals; */ public class CatalogTestUtil { - public static GenericCatalogTable createTable(String comment) { - TableSchema tableSchema = TableSchema.fromTypeInfo(getRowTypeInfo()); - return new GenericCatalogTable(tableSchema, createTableStats(), new HashMap<>(), comment); - } - - public static RowTypeInfo getRowTypeInfo() { - return new RowTypeInfo( - new TypeInformation[] {BasicTypeInfo.INT_TYPE_INFO, BasicTypeInfo.INT_TYPE_INFO}, - new String[] {"a", "b"}); - } - - public static TableStats createTableStats() { - return new TableStats(2); - } - - public static GenericCatalogTable createTable( - TableSchema schema, - Map<String, String> tableProperties, - String comment) { - - return new GenericCatalogTable(schema, new TableStats(0), tableProperties, comment); - } - - public static GenericCatalogTable createPartitionedTable( - TableSchema schema, - List<String> partitionKeys, - Map<String, String> tableProperties, - String comment) { - - return new GenericCatalogTable(schema, new TableStats(0), partitionKeys, tableProperties, comment); - } - - public static void checkEquals(GenericCatalogTable t1, GenericCatalogTable t2) { + public static void checkEquals(CatalogTable t1, CatalogTable t2) { assertEquals(t1.getSchema(), t2.getSchema()); checkEquals(t1.getStatistics(), t2.getStatistics()); - assertEquals(t1.getComment(), t2.getComment()); + assertEquals(t1.getDescription(), t2.getDescription()); } protected static void checkEquals(TableStats ts1, TableStats ts2) {