MainViewPresenter extends Presenter { private void loadBitcoinPrice() { callback.showLoading(); loadBitcoinPriceUseCase.execute( value -> callback.setData((List<BitcoinPriceViewModel>) value), throwable -> callback.showError(throwable.getMessage()), () -> callback.hideLoading() ); } @Inject  MainViewPresenter(
      @NonNull MainViewCallback callback,
      @NonNull LoadBitcoinPriceUseCase loadBitcoinPriceUseCase); @Override void onDestroy(); @Override void onStart();  }
@Test public void testLoadBitcoinPrice() { mainViewPresenter.onStart(); verify(mainViewCallback).showLoading(); verify(loadBitcoinPriceUseCase).execute(any(Action1.class), any(Action1.class), any(Action0.class)); }