Fix only one "active" HA showing under Accessibility Settings
-return main device on getConnectedHearingAidDevice() -add test case Bug: 123777253 Test: make -j42 RunSettingsRoboTests Change-Id: I63522311b2248df983f200864b5465c0055056da
This commit is contained in:
@@ -148,7 +148,8 @@ public class AccessibilityHearingAidPreferenceController extends BasePreferenceC
|
|||||||
mFragmentManager = fragmentManager;
|
mFragmentManager = fragmentManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
private CachedBluetoothDevice getConnectedHearingAidDevice() {
|
@VisibleForTesting
|
||||||
|
CachedBluetoothDevice getConnectedHearingAidDevice() {
|
||||||
if (!mHearingAidProfileSupported) {
|
if (!mHearingAidProfileSupported) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -158,9 +159,11 @@ public class AccessibilityHearingAidPreferenceController extends BasePreferenceC
|
|||||||
final List<BluetoothDevice> deviceList = mLocalBluetoothManager.getProfileManager()
|
final List<BluetoothDevice> deviceList = mLocalBluetoothManager.getProfileManager()
|
||||||
.getHearingAidProfile().getConnectedDevices();
|
.getHearingAidProfile().getConnectedDevices();
|
||||||
final Iterator it = deviceList.iterator();
|
final Iterator it = deviceList.iterator();
|
||||||
if (it.hasNext()) {
|
while (it.hasNext()) {
|
||||||
BluetoothDevice obj = (BluetoothDevice)it.next();
|
BluetoothDevice obj = (BluetoothDevice)it.next();
|
||||||
return mLocalBluetoothManager.getCachedDeviceManager().findDevice(obj);
|
if (!mLocalBluetoothManager.getCachedDeviceManager().isSubDevice(obj)) {
|
||||||
|
return mLocalBluetoothManager.getCachedDeviceManager().findDevice(obj);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
@@ -181,6 +181,15 @@ public class AccessibilityHearingAidPreferenceControllerTest {
|
|||||||
verify(mContext, never()).unregisterReceiver(any());
|
verify(mContext, never()).unregisterReceiver(any());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void getConnectedHearingAidDevice_doNotReturnSubDevice() {
|
||||||
|
when(mHearingAidProfile.getConnectedDevices()).thenReturn(generateHearingAidDeviceList());
|
||||||
|
when(mLocalBluetoothManager.getCachedDeviceManager().isSubDevice(mBluetoothDevice))
|
||||||
|
.thenReturn(true);
|
||||||
|
|
||||||
|
assertThat(mPreferenceController.getConnectedHearingAidDevice()).isNull();
|
||||||
|
}
|
||||||
|
|
||||||
private void setupBluetoothEnvironment() {
|
private void setupBluetoothEnvironment() {
|
||||||
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBluetoothManager;
|
ShadowBluetoothUtils.sLocalBluetoothManager = mLocalBluetoothManager;
|
||||||
mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
|
mLocalBluetoothManager = Utils.getLocalBtManager(mContext);
|
||||||
|
Reference in New Issue
Block a user