BigtableDataGCJClient implements IBigtableDataClient, AutoCloseable { @Override public ApiFuture<Void> mutateRowAsync(RowMutation rowMutation) { return delegate.mutateRowAsync(rowMutation); } BigtableDataGCJClient(BigtableDataClient delegate); @Override void mutateRow(RowMutation rowMutation); @Override ApiFuture<Void> mutateRowAsync(RowMutation rowMutation); @Override Row readModifyWriteRow(ReadModifyWriteRow readModifyWriteRow); @Override ApiFuture<Row> readModifyWriteRowAsync(ReadModifyWriteRow readModifyWriteRow); @Override IBulkMutation createBulkMutationBatcher(String tableId); @Override Boolean checkAndMutateRow(ConditionalRowMutation conditionalRowMutation); @Override ApiFuture<Boolean> checkAndMutateRowAsync(ConditionalRowMutation conditionalRowMutation); @Override List<KeyOffset> sampleRowKeys(String tableId); @Override ApiFuture<List<KeyOffset>> sampleRowKeysAsync(String tableId); @Override ResultScanner<Row> readRows(Query request); @Override ApiFuture<List<Row>> readRowsAsync(Query request); @Override List<FlatRow> readFlatRowsList(Query request); @Override ResultScanner<FlatRow> readFlatRows(Query request); @Override ApiFuture<List<FlatRow>> readFlatRowsAsync(Query request); @Override void readFlatRowsAsync(Query request, StreamObserver<FlatRow> observer); @Override void close();  }
@Test public void testMutateRowAsync() throws Exception { RowMutation rowMutation = RowMutation.create(TABLE_ID, ROW_KEY); when(dataClientV2.mutateRowAsync(rowMutation)) .thenReturn(ApiFutures.<Void>immediateFuture(null)); dataGCJClient.mutateRowAsync(rowMutation).get(); verify(dataClientV2).mutateRowAsync(rowMutation); }