RetryableLineMessagingClientImpl implements RetryableLineMessagingClient { @Override public CompletableFuture<BotApiResponse> multicast(final UUID retryKey, final Multicast multicast) { return toBotApiResponseFuture(retrofitImpl.multicast(retryKey.toString(), multicast)); }  @Override CompletableFuture<BotApiResponse> pushMessage(final UUID retryKey, final PushMessage pushMessage); @Override CompletableFuture<BotApiResponse> multicast(final UUID retryKey, final Multicast multicast); @Override CompletableFuture<BotApiResponse> broadcast(final UUID retryKey, final Broadcast broadcast); @Override CompletableFuture<BotApiResponse> narrowcast(final UUID retryKey, final Narrowcast narrowcast);  }
@Test public void multicastTest() throws Exception { UUID retryKey = UUID.randomUUID(); whenCall(retrofitMock.multicast(any(String.class), any(Multicast.class)), BOT_API_SUCCESS_RESPONSE_BODY); final Multicast multicast = new Multicast(singleton("TO"), new TextMessage("text")); final BotApiResponse botApiResponse = target.multicast(retryKey, multicast).get(); verify(retrofitMock, only()).multicast(retryKey.toString(), multicast); assertThat(botApiResponse).isEqualTo(BOT_API_SUCCESS_RESPONSE); }