Remove unavailable preset info option
Bug: 347134589 Test: atest BluetoothDetailsHearingAidsPresetsControllerTest Flag: EXEMPT bugfix Change-Id: Iabdbe675a08fcd172617ef31dd0b8fbe8dccbb89
This commit is contained in:
@@ -276,7 +276,8 @@ public class BluetoothDetailsHearingAidsPresetsController extends
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
List<BluetoothHapPresetInfo> infoList = mHapClientProfile.getAllPresetInfo(
|
List<BluetoothHapPresetInfo> infoList = mHapClientProfile.getAllPresetInfo(
|
||||||
mCachedDevice.getDevice());
|
mCachedDevice.getDevice()).stream().filter(
|
||||||
|
BluetoothHapPresetInfo::isAvailable).toList();
|
||||||
CharSequence[] presetNames = new CharSequence[infoList.size()];
|
CharSequence[] presetNames = new CharSequence[infoList.size()];
|
||||||
CharSequence[] presetIndexes = new CharSequence[infoList.size()];
|
CharSequence[] presetIndexes = new CharSequence[infoList.size()];
|
||||||
for (int i = 0; i < infoList.size(); i++) {
|
for (int i = 0; i < infoList.size(); i++) {
|
||||||
|
@@ -222,7 +222,7 @@ public class BluetoothDetailsHearingAidsPresetsControllerTest extends
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void refresh_validPresetInfo_preferenceEnabled() {
|
public void refresh_validPresetInfo_preferenceEnabled() {
|
||||||
BluetoothHapPresetInfo info = getTestPresetInfo();
|
BluetoothHapPresetInfo info = getTestPresetInfo(true);
|
||||||
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
||||||
|
|
||||||
mController.refresh();
|
mController.refresh();
|
||||||
@@ -233,7 +233,7 @@ public class BluetoothDetailsHearingAidsPresetsControllerTest extends
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void refresh_invalidActivePresetIndex_summaryIsNull() {
|
public void refresh_invalidActivePresetIndex_summaryIsNull() {
|
||||||
BluetoothHapPresetInfo info = getTestPresetInfo();
|
BluetoothHapPresetInfo info = getTestPresetInfo(true);
|
||||||
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
||||||
when(mHapClientProfile.getActivePresetIndex(mDevice)).thenReturn(PRESET_INDEX_UNAVAILABLE);
|
when(mHapClientProfile.getActivePresetIndex(mDevice)).thenReturn(PRESET_INDEX_UNAVAILABLE);
|
||||||
|
|
||||||
@@ -245,7 +245,7 @@ public class BluetoothDetailsHearingAidsPresetsControllerTest extends
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void refresh_validActivePresetIndex_summaryIsNotNull() {
|
public void refresh_validActivePresetIndex_summaryIsNotNull() {
|
||||||
BluetoothHapPresetInfo info = getTestPresetInfo();
|
BluetoothHapPresetInfo info = getTestPresetInfo(true);
|
||||||
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
||||||
when(mHapClientProfile.getActivePresetIndex(mDevice)).thenReturn(TEST_PRESET_INDEX);
|
when(mHapClientProfile.getActivePresetIndex(mDevice)).thenReturn(TEST_PRESET_INDEX);
|
||||||
|
|
||||||
@@ -265,10 +265,30 @@ public class BluetoothDetailsHearingAidsPresetsControllerTest extends
|
|||||||
verify(mHapClientProfile).selectPreset(mDevice, TEST_PRESET_INDEX);
|
verify(mHapClientProfile).selectPreset(mDevice, TEST_PRESET_INDEX);
|
||||||
}
|
}
|
||||||
|
|
||||||
private BluetoothHapPresetInfo getTestPresetInfo() {
|
@Test
|
||||||
|
public void loadAllPresetInfo_unavailablePreset_notAddedToEntries() {
|
||||||
|
BluetoothHapPresetInfo info = getTestPresetInfo(false);
|
||||||
|
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
||||||
|
|
||||||
|
mController.refresh();
|
||||||
|
|
||||||
|
assertThat(mController.getPreference().getEntries().length).isEqualTo(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void loadAllPresetInfo_availablePreset_addedToEntries() {
|
||||||
|
BluetoothHapPresetInfo info = getTestPresetInfo(true);
|
||||||
|
when(mHapClientProfile.getAllPresetInfo(mDevice)).thenReturn(List.of(info));
|
||||||
|
|
||||||
|
mController.refresh();
|
||||||
|
|
||||||
|
assertThat(mController.getPreference().getEntries().length).isEqualTo(1);
|
||||||
|
}
|
||||||
|
private BluetoothHapPresetInfo getTestPresetInfo(boolean available) {
|
||||||
BluetoothHapPresetInfo info = mock(BluetoothHapPresetInfo.class);
|
BluetoothHapPresetInfo info = mock(BluetoothHapPresetInfo.class);
|
||||||
when(info.getName()).thenReturn(TEST_PRESET_NAME);
|
when(info.getName()).thenReturn(TEST_PRESET_NAME);
|
||||||
when(info.getIndex()).thenReturn(TEST_PRESET_INDEX);
|
when(info.getIndex()).thenReturn(TEST_PRESET_INDEX);
|
||||||
|
when(info.isAvailable()).thenReturn(available);
|
||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user