Merge "Fix search indexed the item from the invisible sim" into 24D1-dev

This commit is contained in:
SongFerng Wang
2024-05-15 07:02:53 +00:00
committed by Android (Google) Code Review
2 changed files with 31 additions and 3 deletions

View File

@@ -708,12 +708,13 @@ public class MobileNetworkUtils {
return tm.getNetworkOperatorName(); return tm.getNetworkOperatorName();
} }
private static int[] getActiveSubscriptionIdList(Context context) { @VisibleForTesting
static int[] getActiveSubscriptionIdList(Context context) {
final SubscriptionManager subscriptionManager = context.getSystemService( final SubscriptionManager subscriptionManager = context.getSystemService(
SubscriptionManager.class).createForAllUserProfiles(); SubscriptionManager.class).createForAllUserProfiles();
final List<SubscriptionInfo> subInfoList = final List<SubscriptionInfo> subInfoList =
subscriptionManager.getActiveSubscriptionInfoList(); SubscriptionUtil.getActiveSubscriptions(subscriptionManager);
if (subInfoList == null) { if (subInfoList == null || subInfoList.isEmpty()) {
return new int[0]; return new int[0];
} }
int[] activeSubIds = new int[subInfoList.size()]; int[] activeSubIds = new int[subInfoList.size()];

View File

@@ -239,6 +239,33 @@ public class MobileNetworkUtilsTest {
.isEqualTo(SubscriptionManager.INVALID_SUBSCRIPTION_ID); .isEqualTo(SubscriptionManager.INVALID_SUBSCRIPTION_ID);
} }
@Test
public void getActiveSubscriptionIdList_nonActive_returnEmptyArray() {
int[] expectedList = new int[0];
when(mSubscriptionManager.getActiveSubscriptionInfoList()).thenReturn(new ArrayList<>());
assertThat(MobileNetworkUtils.getActiveSubscriptionIdList(mContext))
.isEqualTo(expectedList);
}
@Test
public void getActiveSubscriptionIdList_normalCaseTwoActiveSims_returnValidSubId() {
int[] expectedList = {SUB_ID_1, SUB_ID_2};
assertThat(MobileNetworkUtils.getActiveSubscriptionIdList(mContext))
.isEqualTo(expectedList);
}
@Test
public void getActiveSubscriptionIdList_TwoActiveSimsAndOneIsNtn_returnOneSubId() {
int[] expectedList = {SUB_ID_2};
when(mSubscriptionInfo1.isEmbedded()).thenReturn(true);
when(mSubscriptionInfo1.isOnlyNonTerrestrialNetwork()).thenReturn(true);
assertThat(MobileNetworkUtils.getActiveSubscriptionIdList(mContext))
.isEqualTo(expectedList);
}
@Test @Test
public void shouldDisplayNetworkSelectOptions_HideCarrierNetwork_returnFalse() { public void shouldDisplayNetworkSelectOptions_HideCarrierNetwork_returnFalse() {
mCarrierConfig.putBoolean(CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL, mCarrierConfig.putBoolean(CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL,