Remove empty MNC filtering when retrieving available subscriptions
During the early phase of work on DSDS, we found that a hacky solution to seeing duplicate subscriptions that are part of a logical group (eg Google Fi) was to filter out the entries with empty MNC strings. It turns out this breaks things for some legitimate eSIM subsctiptions, and isn't needed anymore because of the fixes that landed for b/127833821. Fixes: 130706446 Test: make RunSettingsRoboTests Change-Id: Ic4472c1de3c3e2449139b3e2ffb20d11a0058e8a
This commit is contained in:
@@ -101,16 +101,6 @@ public class SubscriptionUtil {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// With some carriers such as Google Fi which provide a sort of virtual service that spans
|
||||
// across multiple underlying networks, we end up with subscription entries for the
|
||||
// underlying networks that need to be hidden from the user in the UI.
|
||||
for (Iterator<SubscriptionInfo> iter = subscriptions.iterator(); iter.hasNext(); ) {
|
||||
SubscriptionInfo info = iter.next();
|
||||
if (TextUtils.isEmpty(info.getMncString())) {
|
||||
iter.remove();
|
||||
}
|
||||
}
|
||||
return subscriptions;
|
||||
}
|
||||
}
|
||||
|
@@ -72,7 +72,6 @@ public class SubscriptionUtilTest {
|
||||
@Test
|
||||
public void getAvailableSubscriptions_oneSubscription_oneResult() {
|
||||
final SubscriptionInfo info = mock(SubscriptionInfo.class);
|
||||
when(info.getMncString()).thenReturn("fake1234");
|
||||
when(mSubMgr.getSelectableSubscriptionInfoList()).thenReturn(Arrays.asList(info));
|
||||
final List<SubscriptionInfo> subs = SubscriptionUtil.getAvailableSubscriptions(mContext);
|
||||
assertThat(subs).isNotNull();
|
||||
@@ -83,60 +82,22 @@ public class SubscriptionUtilTest {
|
||||
public void getAvailableSubscriptions_twoSubscriptions_twoResults() {
|
||||
final SubscriptionInfo info1 = mock(SubscriptionInfo.class);
|
||||
final SubscriptionInfo info2 = mock(SubscriptionInfo.class);
|
||||
when(info1.getMncString()).thenReturn("fake1234");
|
||||
when(info2.getMncString()).thenReturn("fake5678");
|
||||
when(mSubMgr.getSelectableSubscriptionInfoList()).thenReturn(Arrays.asList(info1, info2));
|
||||
final List<SubscriptionInfo> subs = SubscriptionUtil.getAvailableSubscriptions(mContext);
|
||||
assertThat(subs).isNotNull();
|
||||
assertThat(subs).hasSize(2);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvailableSubscriptions_oneSubWithHiddenNetworks_oneResult() {
|
||||
final SubscriptionInfo info1 = mock(SubscriptionInfo.class);
|
||||
final SubscriptionInfo info2 = mock(SubscriptionInfo.class);
|
||||
final SubscriptionInfo info3 = mock(SubscriptionInfo.class);
|
||||
when(info1.getSubscriptionId()).thenReturn(1);
|
||||
when(info1.getMncString()).thenReturn("fake1234");
|
||||
when(mSubMgr.getSelectableSubscriptionInfoList()).thenReturn(
|
||||
new ArrayList<>(Arrays.asList(info1, info2, info3)));
|
||||
final List<SubscriptionInfo> subs = SubscriptionUtil.getAvailableSubscriptions(mContext);
|
||||
assertThat(subs).isNotNull();
|
||||
assertThat(subs).hasSize(1);
|
||||
assertThat(subs.get(0).getSubscriptionId()).isEqualTo(1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvailableSubscriptions_twoSubsWithHiddenNetworks_twoResults() {
|
||||
final SubscriptionInfo info1 = mock(SubscriptionInfo.class);
|
||||
final SubscriptionInfo info2 = mock(SubscriptionInfo.class);
|
||||
final SubscriptionInfo info3 = mock(SubscriptionInfo.class);
|
||||
final SubscriptionInfo info4 = mock(SubscriptionInfo.class);
|
||||
when(info1.getSubscriptionId()).thenReturn(1);
|
||||
when(info1.getMncString()).thenReturn("fake1234");
|
||||
when(info4.getSubscriptionId()).thenReturn(4);
|
||||
when(info4.getMncString()).thenReturn("fake5678");
|
||||
when(mSubMgr.getSelectableSubscriptionInfoList()).thenReturn(new ArrayList<>(
|
||||
Arrays.asList(info1, info2, info3, info4)));
|
||||
final List<SubscriptionInfo> subs = SubscriptionUtil.getAvailableSubscriptions(mContext);
|
||||
assertThat(subs).isNotNull();
|
||||
assertThat(subs).hasSize(2);
|
||||
assertThat(subs.get(0).getSubscriptionId()).isEqualTo(1);
|
||||
assertThat(subs.get(1).getSubscriptionId()).isEqualTo(4);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvailableSubscriptions_oneSelectableOneDisabledPSim_twoResults() {
|
||||
final SubscriptionInfo info1 = mock(SubscriptionInfo.class);
|
||||
final SubscriptionInfo info2 = mock(SubscriptionInfo.class);
|
||||
|
||||
when(info1.getSubscriptionId()).thenReturn(111);
|
||||
when(info1.getMncString()).thenReturn("fake111");
|
||||
when(info1.getSimSlotIndex()).thenReturn(-1);
|
||||
when(info1.getCardString()).thenReturn("info1_cardid");
|
||||
|
||||
when(info2.getSubscriptionId()).thenReturn(222);
|
||||
when(info2.getMncString()).thenReturn("fake222");
|
||||
when(info2.getSimSlotIndex()).thenReturn(0);
|
||||
when(info2.getCardString()).thenReturn("info2_cardid");
|
||||
|
||||
@@ -165,17 +126,14 @@ public class SubscriptionUtilTest {
|
||||
final SubscriptionInfo info3 = mock(SubscriptionInfo.class);
|
||||
|
||||
when(info1.getSubscriptionId()).thenReturn(111);
|
||||
when(info1.getMncString()).thenReturn("fake111");
|
||||
when(info1.getSimSlotIndex()).thenReturn(-1);
|
||||
when(info1.getCardString()).thenReturn("info1_cardid");
|
||||
|
||||
when(info2.getSubscriptionId()).thenReturn(222);
|
||||
when(info2.getMncString()).thenReturn("fake222");
|
||||
when(info2.getSimSlotIndex()).thenReturn(-1);
|
||||
when(info2.getCardString()).thenReturn("info2_cardid");
|
||||
|
||||
when(info3.getSubscriptionId()).thenReturn(333);
|
||||
when(info3.getMncString()).thenReturn("fake333");
|
||||
when(info3.getSimSlotIndex()).thenReturn(0);
|
||||
when(info3.getCardString()).thenReturn("info3_cardid");
|
||||
|
||||
|
Reference in New Issue
Block a user