commit | f5cc663a8adad055c46294b1cd777bb845ef6690 | [log] [tgz] |
---|---|---|
author | Chris Antol <cantol@google.com> | Thu May 09 01:25:24 2024 +0000 |
committer | Cherrypicker Worker <android-build-cherrypicker-worker@google.com> | Tue May 14 16:19:59 2024 +0000 |
tree | ba39f11fee80bfa1082922df6f4a26f9809d4c37 | |
parent | b9a0722d207c8a9a35d0ee9e62d44b294e790dac [diff] |
Fix NPE in AudioSwitchPreferenceController Test: Unit Test to verify nullness Bug: 338892614 (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:7ac80f0a0a69e99ec3603e9157cd5a2b20509e85) Merged-In: Ic97d1a6269a6d98ffd15a9b512f6ae24ff1c5b5e Change-Id: Ic97d1a6269a6d98ffd15a9b512f6ae24ff1c5b5e
diff --git a/src/com/android/settings/sound/AudioSwitchPreferenceController.java b/src/com/android/settings/sound/AudioSwitchPreferenceController.java index b785210..5938362 100644 --- a/src/com/android/settings/sound/AudioSwitchPreferenceController.java +++ b/src/com/android/settings/sound/AudioSwitchPreferenceController.java
@@ -242,6 +242,10 @@ return connectedDevices; } final List<BluetoothDevice> devices = leAudioProfile.getConnectedDevices(); + if (devices == null) { + Log.d(TAG, "No connected LeAudioProfile devices"); + return connectedDevices; + } for (BluetoothDevice device : devices) { if (device.isConnected() && isDeviceInCachedList(device)) { connectedDevices.add(device);
diff --git a/tests/robotests/src/com/android/settings/sound/AudioOutputSwitchPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/sound/AudioOutputSwitchPreferenceControllerTest.java index a272d9c..91fd33d 100644 --- a/tests/robotests/src/com/android/settings/sound/AudioOutputSwitchPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/sound/AudioOutputSwitchPreferenceControllerTest.java
@@ -517,6 +517,15 @@ } @Test + public void getConnectedLeAudioDevices_nullConnectedDevices_returnEmptyList() { + when(mLeAudioProfile.getConnectedDevices()).thenReturn(null); + + List<BluetoothDevice> connectedDevices = mController.getConnectedLeAudioDevices(); + + assertThat(connectedDevices.isEmpty()).isTrue(); + } + + @Test public void findActiveLeAudioDevice_noActiveDevice_returnNull() { mLeAudioActiveDevices.clear(); when(mLeAudioProfile.getActiveDevices()).thenReturn(mLeAudioActiveDevices);