### Question:
TransactionRepositoryOkHttpImpl extends AbstractRepositoryOkHttpImpl implements TransactionRepository { @Override public Observable<TransactionAnnounceResponse> announceAggregateBonded( SignedTransaction signedTransaction) { Callable<AnnounceTransactionInfoDTO> callback = () -> getClient() .announcePartialTransaction( new TransactionPayload().payload(signedTransaction.getPayload())); return call(callback, dto -> new TransactionAnnounceResponse(dto.getMessage())); } TransactionRepositoryOkHttpImpl(ApiClient apiClient); TransactionRoutesApi getClient(); @Override Observable<Transaction> getTransaction(TransactionGroup group, String transactionHash); @Override Observable<List<Transaction>> getTransactions(
      TransactionGroup group, List<String> transactionHashes); @Override Observable<TransactionAnnounceResponse> announce(SignedTransaction signedTransaction); @Override Observable<TransactionAnnounceResponse> announceAggregateBonded(
      SignedTransaction signedTransaction); @Override Observable<TransactionAnnounceResponse> announceAggregateBondedCosignature(
      CosignatureSignedTransaction cosignatureSignedTransaction); @Override Observable<Page<Transaction>> search(TransactionSearchCriteria criteria);  }### Answer:
@Test public void shouldAnnounceAggregateBonded() throws Exception { SignedTransaction signedTransaction = getSignedTransaction(); AnnounceTransactionInfoDTO announceTransactionInfoDTO = new AnnounceTransactionInfoDTO(); announceTransactionInfoDTO.setMessage("SomeMessage"); mockRemoteCall(announceTransactionInfoDTO); TransactionAnnounceResponse response = repository.announceAggregateBonded(signedTransaction).toFuture().get(); Assertions.assertNotNull(response); Assertions.assertEquals( announceTransactionInfoDTO.getMessage(), announceTransactionInfoDTO.getMessage()); }