@Test
  public void testCloneTableSchemaWithExistentDestinationTable() throws Exception {
    final TableName newTableName = TableName.valueOf(tableName.getNameAsString() + "_new");
    byte[] FAMILY_0 = Bytes.toBytes("cf0");
    TEST_UTIL.createTable(tableName, FAMILY_0);
    TEST_UTIL.createTable(newTableName, FAMILY_0);
    // test for existent destination table
    try {
      admin.cloneTableSchema(tableName, newTableName, false).join();
      fail("Should have failed when destination table exists.");
    } catch (CompletionException e) {
      assertTrue(e.getCause() instanceof TableExistsException);
    }
  }
Class to test asynchronous table admin operations.
@see TestAsyncTableAdminApi2 This test and it used to be joined it was taking longer than our ten
     minute timeout so they were split.
@see TestAsyncTableAdminApi3 Another split out from this class so each runs under ten minutes.
hbase-server/src/test/java/org/apache/hadoop/hbase/client/TestAsyncTableAdminApi.java