Loading src/java/com/android/internal/telephony/MultiSimSettingController.java +7 −6 Original line number Diff line number Diff line Loading @@ -444,14 +444,15 @@ public class MultiSimSettingController extends Handler { return; } CarrierConfigManager cm = mContext.getSystemService(CarrierConfigManager.class); if (cm != null) { if (CarrierConfigManager.isConfigForIdentifiedCarrier(cm.getConfigForSubId(subId))) { CarrierConfigManager cm; if (!SubscriptionManager.isValidSubscriptionId(subId) // record SIM absent. || ((cm = mContext.getSystemService(CarrierConfigManager.class)) != null && CarrierConfigManager.isConfigForIdentifiedCarrier( cm.getConfigForSubId(subId)))) { mCarrierConfigLoadedSubIds[phoneId] = subId; reEvaluateAll(); } } } /** * Check whether carrier config loaded for all subs Loading tests/telephonytests/src/com/android/internal/telephony/MultiSimSettingControllerTest.java +22 −0 Original line number Diff line number Diff line Loading @@ -911,6 +911,28 @@ public class MultiSimSettingControllerTest extends TelephonyTest { // This time user data should be disabled on phone1. verify(mDataSettingsManagerMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false, PHONE_PACKAGE); // Remove and insert back SIM before it's loaded. clearInvocations(mSubscriptionManagerService); markSubscriptionInactive(1/*subid*/); sendCarrierConfigChanged(0/*phoneid*/, SubscriptionManager.INVALID_SUBSCRIPTION_ID); verify(mSubscriptionManagerService).setDefaultDataSubId( SubscriptionManager.INVALID_SUBSCRIPTION_ID); // insert it back, but carrier config not loaded yet clearInvocations(mSubscriptionManagerService); setSimSlotIndex(1/*subid*/, 0/*phoneid*/); mMultiSimSettingControllerUT.notifySubscriptionInfoChanged(); sendCarrierConfigChanged(0/*phoneid*/, SubscriptionManager.INVALID_SUBSCRIPTION_ID); verify(mSubscriptionManagerService, never()).setDefaultDataSubId( SubscriptionManager.INVALID_SUBSCRIPTION_ID); // carrier config loaded clearInvocations(mContext); sendCarrierConfigChanged(0/*phoneid*/, 1/*subid*/); verify(mContext).sendBroadcast(any()); } @Test Loading Loading
src/java/com/android/internal/telephony/MultiSimSettingController.java +7 −6 Original line number Diff line number Diff line Loading @@ -444,14 +444,15 @@ public class MultiSimSettingController extends Handler { return; } CarrierConfigManager cm = mContext.getSystemService(CarrierConfigManager.class); if (cm != null) { if (CarrierConfigManager.isConfigForIdentifiedCarrier(cm.getConfigForSubId(subId))) { CarrierConfigManager cm; if (!SubscriptionManager.isValidSubscriptionId(subId) // record SIM absent. || ((cm = mContext.getSystemService(CarrierConfigManager.class)) != null && CarrierConfigManager.isConfigForIdentifiedCarrier( cm.getConfigForSubId(subId)))) { mCarrierConfigLoadedSubIds[phoneId] = subId; reEvaluateAll(); } } } /** * Check whether carrier config loaded for all subs Loading
tests/telephonytests/src/com/android/internal/telephony/MultiSimSettingControllerTest.java +22 −0 Original line number Diff line number Diff line Loading @@ -911,6 +911,28 @@ public class MultiSimSettingControllerTest extends TelephonyTest { // This time user data should be disabled on phone1. verify(mDataSettingsManagerMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false, PHONE_PACKAGE); // Remove and insert back SIM before it's loaded. clearInvocations(mSubscriptionManagerService); markSubscriptionInactive(1/*subid*/); sendCarrierConfigChanged(0/*phoneid*/, SubscriptionManager.INVALID_SUBSCRIPTION_ID); verify(mSubscriptionManagerService).setDefaultDataSubId( SubscriptionManager.INVALID_SUBSCRIPTION_ID); // insert it back, but carrier config not loaded yet clearInvocations(mSubscriptionManagerService); setSimSlotIndex(1/*subid*/, 0/*phoneid*/); mMultiSimSettingControllerUT.notifySubscriptionInfoChanged(); sendCarrierConfigChanged(0/*phoneid*/, SubscriptionManager.INVALID_SUBSCRIPTION_ID); verify(mSubscriptionManagerService, never()).setDefaultDataSubId( SubscriptionManager.INVALID_SUBSCRIPTION_ID); // carrier config loaded clearInvocations(mContext); sendCarrierConfigChanged(0/*phoneid*/, 1/*subid*/); verify(mContext).sendBroadcast(any()); } @Test Loading