use of org.apache.gobblin.hive.HiveRegProps in project incubator-gobblin by apache.
the class HiveCopyEntityHelperTest method testAddTableDeregisterSteps.
@Test
public void testAddTableDeregisterSteps() throws Exception {
HiveDataset dataset = Mockito.mock(HiveDataset.class);
Mockito.when(dataset.getProperties()).thenReturn(new Properties());
HiveCopyEntityHelper helper = Mockito.mock(HiveCopyEntityHelper.class);
Mockito.when(helper.getDeleteMethod()).thenReturn(DeregisterFileDeleteMethod.NO_DELETE);
Mockito.when(helper.getTargetURI()).thenReturn(Optional.of("/targetURI"));
Mockito.when(helper.getHiveRegProps()).thenReturn(new HiveRegProps(new State()));
Mockito.when(helper.getDataset()).thenReturn(dataset);
Mockito.when(helper.addTableDeregisterSteps(Mockito.any(List.class), Mockito.any(String.class), Mockito.anyInt(), Mockito.any(org.apache.hadoop.hive.ql.metadata.Table.class))).thenCallRealMethod();
org.apache.hadoop.hive.ql.metadata.Table meta_table = Mockito.mock(org.apache.hadoop.hive.ql.metadata.Table.class);
org.apache.hadoop.hive.metastore.api.Table api_table = Mockito.mock(org.apache.hadoop.hive.metastore.api.Table.class);
Mockito.when(api_table.getDbName()).thenReturn("TestDB");
Mockito.when(api_table.getTableName()).thenReturn("TestTable");
Mockito.when(meta_table.getTTable()).thenReturn(api_table);
List<CopyEntity> copyEntities = new ArrayList<CopyEntity>();
String fileSet = "testFileSet";
int initialPriority = 0;
int priority = helper.addTableDeregisterSteps(copyEntities, fileSet, initialPriority, meta_table);
Assert.assertTrue(priority == 1);
Assert.assertTrue(copyEntities.size() == 1);
Assert.assertTrue(copyEntities.get(0) instanceof PostPublishStep);
PostPublishStep p = (PostPublishStep) (copyEntities.get(0));
Assert.assertTrue(p.getStep().toString().contains("Deregister table TestDB.TestTable on Hive metastore /targetURI"));
}
Aggregations