Merge "Return empty array when BluetoothAdapter is null" into rvc-dev am: 635c9bcb04

Change-Id: If91e39ca35e962c8fdce416f880b0a267b3cb934
This commit is contained in:
TreeHugger Robot
2020-04-14 06:46:59 +00:00
committed by Automerger Merge Worker
2 changed files with 29 additions and 0 deletions

View File

@@ -401,6 +401,11 @@ public class LocalMediaManager implements BluetoothCallback {
}
private List<MediaDevice> buildDisconnectedBluetoothDevice() {
if (mBluetoothAdapter == null) {
Log.w(TAG, "buildDisconnectedBluetoothDevice() BluetoothAdapter is null");
return new ArrayList<>();
}
final List<BluetoothDevice> bluetoothDevices =
mBluetoothAdapter.getMostRecentlyConnectedDevices();
final CachedBluetoothDeviceManager cachedDeviceManager =

View File

@@ -691,4 +691,28 @@ public class LocalMediaManagerTest {
assertThat(mLocalMediaManager.mMediaDevices).hasSize(7);
verify(mCallback).onDeviceListUpdate(any());
}
@Test
public void onDeviceListAdded_bluetoothAdapterIsNull_noDisconnectedDeviceAdded() {
final List<MediaDevice> devices = new ArrayList<>();
final MediaDevice device1 = mock(MediaDevice.class);
final MediaDevice device2 = mock(MediaDevice.class);
final MediaDevice device3 = mock(MediaDevice.class);
mLocalMediaManager.mPhoneDevice = mock(PhoneMediaDevice.class);
devices.add(device1);
devices.add(device2);
mLocalMediaManager.mMediaDevices.add(device3);
mLocalMediaManager.mMediaDevices.add(mLocalMediaManager.mPhoneDevice);
mShadowBluetoothAdapter = null;
when(mLocalMediaManager.mPhoneDevice.getId()).thenReturn("test_phone_id");
assertThat(mLocalMediaManager.mMediaDevices).hasSize(2);
mLocalMediaManager.registerCallback(mCallback);
mLocalMediaManager.mMediaDeviceCallback.onDeviceListAdded(devices);
assertThat(mLocalMediaManager.mMediaDevices).hasSize(2);
verify(mCallback).onDeviceListUpdate(any());
}
}