private Observable<Goal> readCurrentInternal(GoalsReadRequest goalsReadRequest, Long timeout, TimeUnit timeUnit) { return Single.create(new GoalsReadCurrentSingle(rxFit, goalsReadRequest, timeout, timeUnit)) .flatMapObservable(Observable::fromIterable); }
@Override protected void onGoogleApiClientReady(GoogleApiClient apiClient, final SingleEmitter<List<Goal>> subscriber) { setupFitnessPendingResult( Fitness.GoalsApi.readCurrentGoals(apiClient, goalsReadRequest), SingleResultCallBack.get(subscriber, GoalsResult::getGoals) ); } }
@Test public void GoalsReadCurrentSingle_Success() { GoalsResult goalsResult = Mockito.mock(GoalsResult.class); GoalsReadCurrentSingle single = PowerMockito.spy(new GoalsReadCurrentSingle(rxFit, goalsReadRequest, null, null)); List<Goal> goalList = new ArrayList<>(); goalList.add(goal); when(goalsResult.getGoals()).thenReturn(goalList); setPendingResultValue(goalsResult); when(goalsResult.getStatus()).thenReturn(status); when(status.isSuccess()).thenReturn(true); when(goalsApi.readCurrentGoals(apiClient, goalsReadRequest)).thenReturn(pendingResult); setupBaseSingleSuccess(single); assertSingleValue(Single.create(single).test(), goalList); }
@Test public void GoalsReadCurrentSingle_StatusException() { GoalsResult goalsResult = Mockito.mock(GoalsResult.class); GoalsReadCurrentSingle single = PowerMockito.spy(new GoalsReadCurrentSingle(rxFit, goalsReadRequest, null, null)); List<Goal> goalList = new ArrayList<>(); goalList.add(goal); when(goalsResult.getGoals()).thenReturn(goalList); setPendingResultValue(goalsResult); when(goalsResult.getStatus()).thenReturn(status); when(status.isSuccess()).thenReturn(false); when(goalsApi.readCurrentGoals(apiClient, goalsReadRequest)).thenReturn(pendingResult); setupBaseSingleSuccess(single); assertError(Single.create(single).test(), StatusException.class); } }