Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ba8f1ad0 authored by Jeremy Goldman's avatar Jeremy Goldman Committed by Android (Google) Code Review
Browse files

Merge "SubscriptionUtil checks that SubscriptionInfo is null before accessing." into sc-dev

parents b1b0f450 3dd28784
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -338,6 +338,9 @@ public class SubscriptionUtil {
    @VisibleForTesting
    public static CharSequence getUniqueSubscriptionDisplayName(
            SubscriptionInfo info, Context context) {
        if (info == null) {
            return "";
        }
        return getUniqueSubscriptionDisplayName(info.getSubscriptionId(), context);
    }

+20 −0
Original line number Diff line number Diff line
@@ -380,6 +380,26 @@ public class SubscriptionUtilTest {
        assertEquals(CARRIER_1, name);
    }

    @Test
    public void getUniqueDisplayName_nullSubscriptionInfo_emptyStringReturned() {
        final SubscriptionInfo info1 = mock(SubscriptionInfo.class);
        when(info1.getSubscriptionId()).thenReturn(SUBID_1);
        when(info1.getDisplayName()).thenReturn(CARRIER_1);
        when(mSubMgr.getActiveSubscriptionInfoList()).thenReturn(
                Arrays.asList(info1));

        TelephonyManager sub1Telmgr = mock(TelephonyManager.class);
        when(sub1Telmgr.getLine1Number()).thenReturn("1112223333");
        when(mTelMgr.createForSubscriptionId(SUBID_1)).thenReturn(sub1Telmgr);

        SubscriptionInfo info2 = null;
        final CharSequence name =
                SubscriptionUtil.getUniqueSubscriptionDisplayName(info2, mContext);

        assertThat(name).isNotNull();
        assertTrue(TextUtils.isEmpty(name));
    }

    @Test
    public void isInactiveInsertedPSim_nullSubInfo_doesNotCrash() {
        assertThat(SubscriptionUtil.isInactiveInsertedPSim(null)).isFalse();