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

Commit 234be1dd authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 10162339 from 92454b53 to udc-release

Change-Id: I1dd36f2f064b5a76052a75277fad4ebd46eb3cfa
parents 5670fa7c 92454b53
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -684,7 +684,7 @@ public class EmergencyNumberTracker extends Handler {
                + countryIso);
        updateEmergencyCountryIso(countryIso.toLowerCase(Locale.ROOT));
        // Use cached country iso in APM to load emergency number database.
        if (TextUtils.isEmpty(countryIso) && isAirplaneModeEnabled()) {
        if (TextUtils.isEmpty(countryIso)) {
            countryIso = getCountryIsoForCachingDatabase();
            logd("updateEmergencyNumberListDatabaseAndNotify(): using cached APM country "
                    + countryIso);
+30 −1
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ import android.os.Environment;
import android.os.ParcelFileDescriptor;
import android.os.PersistableBundle;
import android.telephony.CarrierConfigManager;
import android.telephony.ServiceState;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.telephony.emergency.EmergencyNumber;
@@ -50,6 +51,7 @@ import androidx.test.InstrumentationRegistry;

import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneFactory;
import com.android.internal.telephony.ServiceStateTracker;
import com.android.internal.telephony.TelephonyTest;

import com.google.i18n.phonenumbers.ShortNumberInfo;
@@ -368,8 +370,31 @@ public class EmergencyNumberTrackerTest extends TelephonyTest {
        IntentFilter ifilter = intentCaptor.getValue();
        assertTrue(ifilter.hasAction(TelephonyManager.ACTION_NETWORK_COUNTRY_CHANGED));
    }

    @Test
    public void testUpdateEmergencyCountryIso_whenStatePowerOff() throws Exception {
        testUpdateEmergencyCountryIso(ServiceState.STATE_POWER_OFF);
    }

    @Test
    public void testUpdateEmergencyCountryIso_whenStateInService() throws Exception {
        testUpdateEmergencyCountryIso(ServiceState.STATE_IN_SERVICE);
    }

    @Test
    public void testUpdateEmergencyCountryIso() throws Exception {
    public void testUpdateEmergencyCountryIso_whenStateOos() throws Exception {
        testUpdateEmergencyCountryIso(ServiceState.STATE_OUT_OF_SERVICE);
    }

    @Test
    public void testUpdateEmergencyCountryIso_whenStateEmergencyOnly() throws Exception {
        testUpdateEmergencyCountryIso(ServiceState.STATE_EMERGENCY_ONLY);
    }

    private void testUpdateEmergencyCountryIso(int ss) throws Exception {
        doReturn(mLocaleTracker).when(mSST).getLocaleTracker();
        doReturn("us").when(mLocaleTracker).getLastKnownCountryIso();

        sendEmergencyNumberPrefix(mEmergencyNumberTrackerMock);

        mEmergencyNumberTrackerMock.updateEmergencyNumberDatabaseCountryChange("us");
@@ -377,10 +402,14 @@ public class EmergencyNumberTrackerTest extends TelephonyTest {
        assertTrue(mEmergencyNumberTrackerMock.getEmergencyCountryIso().equals("us"));
        assertTrue(mEmergencyNumberTrackerMock.getLastKnownEmergencyCountryIso().equals("us"));

        doReturn(ss).when(mServiceState).getState();
        mEmergencyNumberTrackerMock.updateEmergencyNumberDatabaseCountryChange("");
        processAllMessages();
        assertTrue(mEmergencyNumberTrackerMock.getEmergencyCountryIso().equals(""));
        assertTrue(mEmergencyNumberTrackerMock.getLastKnownEmergencyCountryIso().equals("us"));

        //make sure we look up cached location whenever current iso is null
        verify(mLocaleTracker).getLastKnownCountryIso();
    }

    @Test