BigtableTableAdminClientWrapper implements IBigtableTableAdminClient { @Override public ApiFuture<Snapshot> getSnapshotAsync(GetSnapshotRequest request) { return ApiFutureUtil.adapt(delegate.getSnapshotAsync(request)); } BigtableTableAdminClientWrapper(
      @Nonnull BigtableTableAdminClient adminClient, @Nonnull BigtableOptions options); @Override Table createTable(CreateTableRequest request); @Override ApiFuture<Table> createTableAsync(CreateTableRequest request); @Override Table getTable(String tableId); @Override ApiFuture<Table> getTableAsync(String tableId); @Override List<String> listTables(); @Override ApiFuture<List<String>> listTablesAsync(); @Override void deleteTable(String tableId); @Override ApiFuture<Void> deleteTableAsync(String tableId); @Override Table modifyFamilies(ModifyColumnFamiliesRequest request); @Override ApiFuture<Table> modifyFamiliesAsync(ModifyColumnFamiliesRequest request); @Override void dropRowRange(String tableId, String rowKeyPrefix); @Override void dropRowRange(String tableId, ByteString rowKeyPrefix); @Override ApiFuture<Void> dropRowRangeAsync(String tableId, String rowKeyPrefix); @Override ApiFuture<Void> dropRowRangeAsync(String tableId, ByteString rowKeyPrefix); @Override void dropAllRows(String tableId); @Override ApiFuture<Void> dropAllRowsAsync(String tableId); @Override ApiFuture<Operation> snapshotTableAsync(SnapshotTableRequest request); @Override ApiFuture<Snapshot> getSnapshotAsync(GetSnapshotRequest request); @Override ApiFuture<ListSnapshotsResponse> listSnapshotsAsync(ListSnapshotsRequest request); @Override ApiFuture<Void> deleteSnapshotAsync(DeleteSnapshotRequest request); @Override ApiFuture<Operation> createTableFromSnapshotAsync(CreateTableFromSnapshotRequest request);  }
@Test public void testGetSnapshotAsync() throws Exception { GetSnapshotRequest request = GetSnapshotRequest.newBuilder().setName(TABLE_NAME).build(); Snapshot response = Snapshot.getDefaultInstance(); when(mockAdminClient.getSnapshotAsync(request)).thenReturn(Futures.immediateFuture(response)); Future<Snapshot> actualResponse = clientWrapper.getSnapshotAsync(request); assertEquals(response, actualResponse.get()); verify(mockAdminClient).getSnapshotAsync(request); }