@Test public void createApiClient_NoScopes() { GoogleApiClient.Builder builder = Mockito.mock(GoogleApiClient.Builder.class); BaseRx<Object> baseRx = spy(new BaseRx<Object>(ctx, new Api[]{ Fitness.HISTORY_API}, null) { @Override protected void handleResolutionResult(int resultCode, ConnectionResult connectionResult) {} }); doReturn(builder).when(baseRx).getApiClientBuilder(); doReturn(apiClient).when(builder).build(); BaseRx.ApiClientConnectionCallbacks callbacks = Mockito.mock(BaseRx.ApiClientConnectionCallbacks.class); assertEquals(apiClient, baseRx.createApiClient(callbacks)); verify(builder).addApi(Fitness.HISTORY_API); verify(builder).addConnectionCallbacks(callbacks); verify(builder).addOnConnectionFailedListener(callbacks); verify(builder, never()).addScope(Matchers.any(Scope.class)); verify(callbacks).setClient(Matchers.any(GoogleApiClient.class)); }
@Test public void createApiClient_Scopes() { GoogleApiClient.Builder builder = Mockito.mock(GoogleApiClient.Builder.class); BaseRx<Object> baseRx = spy(new BaseRx<Object>(ctx, new Api[]{ Fitness.HISTORY_API}, new Scope[]{ Fitness.SCOPE_ACTIVITY_READ }) { @Override protected void handleResolutionResult(int resultCode, ConnectionResult connectionResult) {} }); doReturn(builder).when(baseRx).getApiClientBuilder(); doReturn(apiClient).when(builder).build(); BaseRx.ApiClientConnectionCallbacks callbacks = Mockito.mock(BaseRx.ApiClientConnectionCallbacks.class); assertEquals(apiClient, baseRx.createApiClient(callbacks)); verify(builder).addApi(Fitness.HISTORY_API); verify(builder).addScope(Fitness.SCOPE_ACTIVITY_READ); verify(builder).addConnectionCallbacks(callbacks); verify(builder).addOnConnectionFailedListener(callbacks); verify(callbacks).setClient(Matchers.any(GoogleApiClient.class)); }