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

Commit 1b75d80f authored by mavishsu's avatar mavishsu Committed by Mavis Hsu
Browse files

DO NOT MERGE Return MSISDN as Line1 number if carrier config requires it.

Previously getLine1Number() returns MDN for CDMA phone, it will return MSISDN if a carrier config requires it.

Bug: 124524824
Test: atest GsmCdmaPhoneTest
      atest PhoneSubInfoControllerTest

Change-Id: I11b2e79c4a991208d6f3c914c2639e8918c4c5a9
parent 1be3fdb7
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1610,6 +1610,13 @@ public class GsmCdmaPhone extends Phone {
            IccRecords r = mIccRecords.get();
            return (r != null) ? r.getMsisdnNumber() : null;
        } else {
            CarrierConfigManager configManager = (CarrierConfigManager)
                    mContext.getSystemService(Context.CARRIER_CONFIG_SERVICE);
            boolean use_usim = configManager.getConfigForSubId(getSubId()).getBoolean(
                    CarrierConfigManager.KEY_USE_USIM_BOOL);
            if (use_usim) {
                return (mSimRecords != null) ? mSimRecords.getMsisdnNumber() : null;
            }
            return mSST.getMdnNumber();
        }
    }
+26 −0
Original line number Diff line number Diff line
@@ -957,4 +957,30 @@ public class GsmCdmaPhoneTest extends TelephonyTest {
        assertEquals(EVENT_SET_ICC_LOCK_ENABLED, message.what);
        assertTrue(ret.exception != null);
    }

    @Test
    @SmallTest
    public void testGetLine1NumberForGsmPhone() {
        final String msisdn = "+1234567890";
        doReturn(msisdn).when(mSimRecords).getMsisdnNumber();

        switchToGsm();
        assertEquals(msisdn, mPhoneUT.getLine1Number());
    }

    @Test
    @SmallTest
    public void testGetLine1NumberForCdmaPhone() {
        final String mdn = "1234567890";
        final String msisdn = "+1234567890";
        doReturn(mdn).when(mSST).getMdnNumber();
        doReturn(msisdn).when(mSimRecords).getMsisdnNumber();

        switchToCdma();
        assertEquals(mdn, mPhoneUT.getLine1Number());

        mContextFixture.getCarrierConfigBundle().putBoolean(
                CarrierConfigManager.KEY_USE_USIM_BOOL, true);
        assertEquals(msisdn, mPhoneUT.getLine1Number());
    }
}