private Observable<BleDevice> getClaimedDeviceListInternal(DataType dataType, Long timeout, TimeUnit timeUnit) { return Single.create(new BleListClaimedDevicesSingle(rxFit, dataType, timeout, timeUnit)) .flatMapObservable(Observable::fromIterable); }
@Override protected void onGoogleApiClientReady(GoogleApiClient apiClient, final SingleEmitter<List<BleDevice>> subscriber) { setupFitnessPendingResult( Fitness.BleApi.listClaimedBleDevices(apiClient), SingleResultCallBack.get(subscriber, bleDevicesResult -> { if(dataType == null) { return bleDevicesResult.getClaimedBleDevices(); } else { return bleDevicesResult.getClaimedBleDevices(dataType); } }) ); } }
@Test public void BleListClaimedDevicesObservable_StatusException() { BleListClaimedDevicesSingle single = PowerMockito.spy(new BleListClaimedDevicesSingle(rxFit, null, null, null)); BleDevicesResult bleDevicesResult = Mockito.mock(BleDevicesResult.class); List<BleDevice> bleDeviceList = new ArrayList<>(); bleDeviceList.add(bleDevice); when(bleDevicesResult.getClaimedBleDevices()).thenReturn(bleDeviceList); setPendingResultValue(bleDevicesResult); when(bleDevicesResult.getStatus()).thenReturn(status); when(status.isSuccess()).thenReturn(false); when(bleApi.listClaimedBleDevices(apiClient)).thenReturn(pendingResult); setupBaseSingleSuccess(single); assertError(Single.create(single).test(), StatusException.class); }
@Test public void BleListClaimedDevicesObservable_Success() { BleListClaimedDevicesSingle single = PowerMockito.spy(new BleListClaimedDevicesSingle(rxFit, null, null, null)); BleDevicesResult bleDevicesResult = Mockito.mock(BleDevicesResult.class); List<BleDevice> bleDeviceList = new ArrayList<>(); bleDeviceList.add(bleDevice); when(bleDevicesResult.getClaimedBleDevices()).thenReturn(bleDeviceList); setPendingResultValue(bleDevicesResult); when(bleDevicesResult.getStatus()).thenReturn(status); when(status.isSuccess()).thenReturn(true); when(bleApi.listClaimedBleDevices(apiClient)).thenReturn(pendingResult); setupBaseSingleSuccess(single); assertSingleValue(Single.create(single).test(), bleDeviceList); }
@Test public void BleListClaimedDevicesObservable_WithDataType_Success() { BleListClaimedDevicesSingle single = PowerMockito.spy(new BleListClaimedDevicesSingle(rxFit, dataType, null, null)); BleDevicesResult bleDevicesResult = Mockito.mock(BleDevicesResult.class); List<BleDevice> bleDeviceList = new ArrayList<>(); bleDeviceList.add(bleDevice); when(bleDevicesResult.getClaimedBleDevices(dataType)).thenReturn(bleDeviceList); setPendingResultValue(bleDevicesResult); when(bleDevicesResult.getStatus()).thenReturn(status); when(status.isSuccess()).thenReturn(true); when(bleApi.listClaimedBleDevices(apiClient)).thenReturn(pendingResult); setupBaseSingleSuccess(single); assertSingleValue(Single.create(single).test(), bleDeviceList); }
@Test public void BleListClaimedDevicesObservable_WithDataType_StatusException() { BleListClaimedDevicesSingle single = PowerMockito.spy(new BleListClaimedDevicesSingle(rxFit, dataType, null, null)); BleDevicesResult bleDevicesResult = Mockito.mock(BleDevicesResult.class); List<BleDevice> bleDeviceList = new ArrayList<>(); bleDeviceList.add(bleDevice); when(bleDevicesResult.getClaimedBleDevices(dataType)).thenReturn(bleDeviceList); setPendingResultValue(bleDevicesResult); when(bleDevicesResult.getStatus()).thenReturn(status); when(status.isSuccess()).thenReturn(false); when(bleApi.listClaimedBleDevices(apiClient)).thenReturn(pendingResult); setupBaseSingleSuccess(single); assertError(Single.create(single).test(), StatusException.class); }