@Test
public void testListTablesAsync() throws Exception {

  ImmutableList<String> tableIdList =
      ImmutableList.of(TEST_TABLE_ID_1, TEST_TABLE_ID_2, TEST_TABLE_ID_3);
  ListTablesRequest request =
      ListTablesRequest.newBuilder().setParent(INSTANCE_NAME.toString()).build();
  ListTablesResponse.Builder builder = ListTablesResponse.newBuilder();
  builder.addTablesBuilder().setName(INSTANCE_NAME.toTableNameStr(TEST_TABLE_ID_1)).build();
  builder.addTablesBuilder().setName(INSTANCE_NAME.toTableNameStr(TEST_TABLE_ID_2)).build();
  builder.addTablesBuilder().setName(INSTANCE_NAME.toTableNameStr(TEST_TABLE_ID_3)).build();
  when(mockAdminClient.listTablesAsync(request)).thenReturn(immediateFuture(builder.build()));
  Future<List<String>> actualResponse = clientWrapper.listTablesAsync();
  assertEquals(tableIdList, actualResponse.get());
  verify(mockAdminClient).listTablesAsync(request);
}