Loading src/java/com/android/internal/telephony/GsmCdmaPhone.java +1 −2 Original line number Diff line number Diff line Loading @@ -3078,8 +3078,7 @@ public class GsmCdmaPhone extends Phone { case EVENT_SET_CARRIER_DATA_ENABLED: ar = (AsyncResult) msg.obj; boolean enabled = (boolean) ar.result; mDataEnabledSettings.setDataEnabled(TelephonyManager.DATA_ENABLED_REASON_CARRIER, enabled); mDataEnabledSettings.setCarrierDataEnabled(enabled); break; case EVENT_DEVICE_PROVISIONED_CHANGE: mDataEnabledSettings.updateProvisionedChanged(); Loading src/java/com/android/internal/telephony/MultiSimSettingController.java +1 −2 Original line number Diff line number Diff line Loading @@ -699,8 +699,7 @@ public class MultiSimSettingController extends Handler { && phone.isUserDataEnabled() && !areSubscriptionsInSameGroup(defaultDataSub, phone.getSubId())) { log("setting data to false on " + phone.getSubId()); phone.getDataEnabledSettings().setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); phone.getDataEnabledSettings().setUserDataEnabled(false); } } } Loading src/java/com/android/internal/telephony/dataconnection/DataEnabledSettings.java +6 −78 Original line number Diff line number Diff line Loading @@ -69,8 +69,7 @@ public class DataEnabledSettings { REASON_PROVISIONED_CHANGED, REASON_PROVISIONING_DATA_ENABLED_CHANGED, REASON_OVERRIDE_RULE_CHANGED, REASON_OVERRIDE_CONDITION_CHANGED, REASON_THERMAL_DATA_ENABLED REASON_OVERRIDE_CONDITION_CHANGED }) public @interface DataEnabledChangedReason {} Loading @@ -92,8 +91,6 @@ public class DataEnabledSettings { public static final int REASON_OVERRIDE_CONDITION_CHANGED = 8; public static final int REASON_THERMAL_DATA_ENABLED = 9; /** * responds to the setInternalDataEnabled call - used internally to turn off data. * For example during emergency calls Loading @@ -111,15 +108,6 @@ public class DataEnabledSettings { */ private boolean mCarrierDataEnabled = true; /** * Flag indicating data allowed by Thermal service or not. */ private boolean mThermalDataEnabled = true; /** * Flag indicating whether data is allowed or not for the device. It can be disabled by * user, carrier, policy or thermal */ private boolean mIsDataEnabled = false; private final Phone mPhone; Loading Loading @@ -184,7 +172,6 @@ public class DataEnabledSettings { + ", mPolicyDataEnabled=" + mPolicyDataEnabled + ", mCarrierDataEnabled=" + mCarrierDataEnabled + ", mIsDataEnabled=" + mIsDataEnabled + ", mThermalDataEnabled=" + mThermalDataEnabled + ", " + mDataEnabledOverride + "]"; } Loading Loading @@ -217,7 +204,7 @@ public class DataEnabledSettings { return mInternalDataEnabled; } private synchronized void setUserDataEnabled(boolean enabled) { public synchronized void setUserDataEnabled(boolean enabled) { // By default the change should propagate to the group. setUserDataEnabled(enabled, true); } Loading Loading @@ -246,32 +233,6 @@ public class DataEnabledSettings { } } /** * Policy control of data connection with reason * @param reason the reason the data enable change is taking place * @param enabled True if enabling the data, otherwise disabling. */ public synchronized void setDataEnabled(@TelephonyManager.DataEnabledReason int reason, boolean enabled) { switch (reason) { case TelephonyManager.DATA_ENABLED_REASON_USER: setUserDataEnabled(enabled); break; case TelephonyManager.DATA_ENABLED_REASON_CARRIER: setCarrierDataEnabled(enabled); break; case TelephonyManager.DATA_ENABLED_REASON_POLICY: setPolicyDataEnabled(enabled); break; case TelephonyManager.DATA_ENABLED_REASON_THERMAL: setThermalDataEnabled(enabled); break; default: log("Invalid data enable reason " + reason); break; } } public synchronized boolean isUserDataEnabled() { // User data should always be true for opportunistic subscription. if (isStandAloneOpportunistic(mPhone.getSubId(), mPhone.getContext())) return true; Loading Loading @@ -339,7 +300,7 @@ public class DataEnabledSettings { return mDataEnabledOverride.isDataAllowedInVoiceCall(); } private synchronized void setPolicyDataEnabled(boolean enabled) { public synchronized void setPolicyDataEnabled(boolean enabled) { if (mPolicyDataEnabled != enabled) { localLog("PolicyDataEnabled", enabled); mPolicyDataEnabled = enabled; Loading @@ -351,7 +312,7 @@ public class DataEnabledSettings { return mPolicyDataEnabled; } private synchronized void setCarrierDataEnabled(boolean enabled) { public synchronized void setCarrierDataEnabled(boolean enabled) { if (mCarrierDataEnabled != enabled) { localLog("CarrierDataEnabled", enabled); mCarrierDataEnabled = enabled; Loading @@ -363,18 +324,6 @@ public class DataEnabledSettings { return mCarrierDataEnabled; } private synchronized void setThermalDataEnabled(boolean enabled) { if (mThermalDataEnabled != enabled) { localLog("ThermalDataEnabled", enabled); mThermalDataEnabled = enabled; updateDataEnabledAndNotify(REASON_THERMAL_DATA_ENABLED); } } public synchronized boolean isThermalDataEnabled() { return mThermalDataEnabled; } public synchronized void updateProvisionedChanged() { updateDataEnabledAndNotify(REASON_PROVISIONED_CHANGED); } Loading @@ -387,27 +336,6 @@ public class DataEnabledSettings { return mIsDataEnabled; } /** * Check if data is enabled for a specific reason {@@TelephonyManager.DataEnabledReason} * * @return {@code true} if the overall data is enabled; {@code false} if not. */ public synchronized boolean isDataEnabledWithReason( @TelephonyManager.DataEnabledReason int reason) { switch (reason) { case TelephonyManager.DATA_ENABLED_REASON_USER: return isUserDataEnabled(); case TelephonyManager.DATA_ENABLED_REASON_CARRIER: return isCarrierDataEnabled(); case TelephonyManager.DATA_ENABLED_REASON_POLICY: return isPolicyDataEnabled(); case TelephonyManager.DATA_ENABLED_REASON_THERMAL: return isThermalDataEnabled(); default: return false; } } private synchronized void updateDataEnabledAndNotify(int reason) { boolean prevDataEnabled = mIsDataEnabled; Loading @@ -424,7 +352,7 @@ public class DataEnabledSettings { } else { mIsDataEnabled = mInternalDataEnabled && (isUserDataEnabled() || mDataEnabledOverride .shouldOverrideDataEnabledSettings(mPhone, ApnSetting.TYPE_ALL)) && mPolicyDataEnabled && mCarrierDataEnabled && mThermalDataEnabled; && mPolicyDataEnabled && mCarrierDataEnabled; } } Loading Loading @@ -541,7 +469,7 @@ public class DataEnabledSettings { .shouldOverrideDataEnabledSettings(mPhone, apnType); return (mInternalDataEnabled && mPolicyDataEnabled && mCarrierDataEnabled && mThermalDataEnabled && (userDataEnabled || isDataEnabledOverridden)); && (userDataEnabled || isDataEnabledOverridden)); } } Loading src/java/com/android/internal/telephony/vendor/VendorMultiSimSettingController.java +4 −5 Original line number Diff line number Diff line Loading @@ -18,17 +18,17 @@ package com.android.internal.telephony.vendor; import android.content.Context; import android.provider.Settings; import android.provider.Settings.SettingNotFoundException; import android.telephony.SubscriptionInfo; import android.telephony.TelephonyManager; import android.util.Log; import com.android.internal.telephony.GlobalSettingsHelper; import com.android.internal.telephony.MultiSimSettingController; import com.android.internal.telephony.SubscriptionController; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneFactory; import com.android.internal.telephony.SubscriptionController; import java.util.List; import java.util.stream.Collectors; /* * Extending VendorMultiSimSettingController to override default Loading Loading @@ -90,8 +90,7 @@ public class VendorMultiSimSettingController extends MultiSimSettingController { // For active subscription, call setUserDataEnabled through DataEnabledSettings. Phone phone = PhoneFactory.getPhone(mSubController.getPhoneId(currentSubId)); if (phone != null) { phone.getDataEnabledSettings().setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, enable); phone.getDataEnabledSettings().setUserDataEnabled(enable); } } else { // For inactive subscription, directly write into global settings. Loading tests/telephonytests/src/com/android/internal/telephony/MultiSimSettingControllerTest.java +11 −22 Original line number Diff line number Diff line Loading @@ -313,8 +313,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { mMultiSimSettingControllerUT.notifyCarrierConfigChanged(0, 1); mMultiSimSettingControllerUT.notifyCarrierConfigChanged(1, 2); processAllMessages(); verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); // Enable on non-default sub should trigger setDefaultDataSubId. mMultiSimSettingControllerUT.notifyUserDataEnabled(2, true); Loading @@ -325,8 +324,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { doReturn(2).when(mSubControllerMock).getDefaultDataSubId(); mMultiSimSettingControllerUT.notifyDefaultDataSubChanged(); processAllMessages(); verify(mDataEnabledSettingsMock1).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock1).setUserDataEnabled(false); doReturn(1).when(mSubControllerMock).getDefaultDataSubId(); doReturn(1).when(mSubControllerMock).getDefaultSmsSubId(); Loading Loading @@ -393,8 +391,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { doReturn(1).when(mSubControllerMock).getDefaultDataSubId(); mMultiSimSettingControllerUT.notifyDefaultDataSubChanged(); processAllMessages(); verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); mMultiSimSettingControllerUT.notifyUserDataEnabled(2, false); processAllMessages(); assertFalse(GlobalSettingsHelper.getBoolean( Loading Loading @@ -442,8 +439,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { mMultiSimSettingControllerUT.notifyCarrierConfigChanged(1, 2); processAllMessages(); verify(mSubControllerMock).setDefaultDataSubId(2); verify(mDataEnabledSettingsMock1, never()).setDataEnabled( anyInt(), anyBoolean()); verify(mDataEnabledSettingsMock1, never()).setUserDataEnabled(anyBoolean()); // No user selection needed, no intent should be sent. verify(mContext, never()).sendBroadcast(any()); Loading @@ -460,10 +456,8 @@ public class MultiSimSettingControllerTest extends TelephonyTest { mMultiSimSettingControllerUT.notifyUserDataEnabled(2, true); processAllMessages(); verify(mSubControllerMock, never()).setDefaultDataSubId(anyInt()); verify(mDataEnabledSettingsMock1, never()).setDataEnabled( eq(TelephonyManager.DATA_ENABLED_REASON_USER), anyBoolean()); verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock1, never()).setUserDataEnabled(anyBoolean()); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(anyBoolean()); } @Test Loading Loading @@ -557,16 +551,13 @@ public class MultiSimSettingControllerTest extends TelephonyTest { // loaded on both subscriptions. mMultiSimSettingControllerUT.notifyAllSubscriptionLoaded(); processAllMessages(); verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(false); mMultiSimSettingControllerUT.notifyCarrierConfigChanged(0, 1); processAllMessages(); verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(false); mMultiSimSettingControllerUT.notifyCarrierConfigChanged(1, 2); processAllMessages(); verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); // Switch from sub 2 to sub 3 in phone[1]. clearInvocations(mSubControllerMock); Loading Loading @@ -648,8 +639,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { SubscriptionManager.INVALID_SUBSCRIPTION_ID); processAllMessages(); // Nothing should happen as carrier config is not ready for sub 2. verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(false); // Still notify carrier config without specifying subId2, but this time subController // and CarrierConfigManager have subId 2 active and ready. Loading @@ -661,7 +651,6 @@ public class MultiSimSettingControllerTest extends TelephonyTest { SubscriptionManager.INVALID_SUBSCRIPTION_ID); processAllMessages(); // This time user data should be disabled on phone1. verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); } } Loading
src/java/com/android/internal/telephony/GsmCdmaPhone.java +1 −2 Original line number Diff line number Diff line Loading @@ -3078,8 +3078,7 @@ public class GsmCdmaPhone extends Phone { case EVENT_SET_CARRIER_DATA_ENABLED: ar = (AsyncResult) msg.obj; boolean enabled = (boolean) ar.result; mDataEnabledSettings.setDataEnabled(TelephonyManager.DATA_ENABLED_REASON_CARRIER, enabled); mDataEnabledSettings.setCarrierDataEnabled(enabled); break; case EVENT_DEVICE_PROVISIONED_CHANGE: mDataEnabledSettings.updateProvisionedChanged(); Loading
src/java/com/android/internal/telephony/MultiSimSettingController.java +1 −2 Original line number Diff line number Diff line Loading @@ -699,8 +699,7 @@ public class MultiSimSettingController extends Handler { && phone.isUserDataEnabled() && !areSubscriptionsInSameGroup(defaultDataSub, phone.getSubId())) { log("setting data to false on " + phone.getSubId()); phone.getDataEnabledSettings().setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); phone.getDataEnabledSettings().setUserDataEnabled(false); } } } Loading
src/java/com/android/internal/telephony/dataconnection/DataEnabledSettings.java +6 −78 Original line number Diff line number Diff line Loading @@ -69,8 +69,7 @@ public class DataEnabledSettings { REASON_PROVISIONED_CHANGED, REASON_PROVISIONING_DATA_ENABLED_CHANGED, REASON_OVERRIDE_RULE_CHANGED, REASON_OVERRIDE_CONDITION_CHANGED, REASON_THERMAL_DATA_ENABLED REASON_OVERRIDE_CONDITION_CHANGED }) public @interface DataEnabledChangedReason {} Loading @@ -92,8 +91,6 @@ public class DataEnabledSettings { public static final int REASON_OVERRIDE_CONDITION_CHANGED = 8; public static final int REASON_THERMAL_DATA_ENABLED = 9; /** * responds to the setInternalDataEnabled call - used internally to turn off data. * For example during emergency calls Loading @@ -111,15 +108,6 @@ public class DataEnabledSettings { */ private boolean mCarrierDataEnabled = true; /** * Flag indicating data allowed by Thermal service or not. */ private boolean mThermalDataEnabled = true; /** * Flag indicating whether data is allowed or not for the device. It can be disabled by * user, carrier, policy or thermal */ private boolean mIsDataEnabled = false; private final Phone mPhone; Loading Loading @@ -184,7 +172,6 @@ public class DataEnabledSettings { + ", mPolicyDataEnabled=" + mPolicyDataEnabled + ", mCarrierDataEnabled=" + mCarrierDataEnabled + ", mIsDataEnabled=" + mIsDataEnabled + ", mThermalDataEnabled=" + mThermalDataEnabled + ", " + mDataEnabledOverride + "]"; } Loading Loading @@ -217,7 +204,7 @@ public class DataEnabledSettings { return mInternalDataEnabled; } private synchronized void setUserDataEnabled(boolean enabled) { public synchronized void setUserDataEnabled(boolean enabled) { // By default the change should propagate to the group. setUserDataEnabled(enabled, true); } Loading Loading @@ -246,32 +233,6 @@ public class DataEnabledSettings { } } /** * Policy control of data connection with reason * @param reason the reason the data enable change is taking place * @param enabled True if enabling the data, otherwise disabling. */ public synchronized void setDataEnabled(@TelephonyManager.DataEnabledReason int reason, boolean enabled) { switch (reason) { case TelephonyManager.DATA_ENABLED_REASON_USER: setUserDataEnabled(enabled); break; case TelephonyManager.DATA_ENABLED_REASON_CARRIER: setCarrierDataEnabled(enabled); break; case TelephonyManager.DATA_ENABLED_REASON_POLICY: setPolicyDataEnabled(enabled); break; case TelephonyManager.DATA_ENABLED_REASON_THERMAL: setThermalDataEnabled(enabled); break; default: log("Invalid data enable reason " + reason); break; } } public synchronized boolean isUserDataEnabled() { // User data should always be true for opportunistic subscription. if (isStandAloneOpportunistic(mPhone.getSubId(), mPhone.getContext())) return true; Loading Loading @@ -339,7 +300,7 @@ public class DataEnabledSettings { return mDataEnabledOverride.isDataAllowedInVoiceCall(); } private synchronized void setPolicyDataEnabled(boolean enabled) { public synchronized void setPolicyDataEnabled(boolean enabled) { if (mPolicyDataEnabled != enabled) { localLog("PolicyDataEnabled", enabled); mPolicyDataEnabled = enabled; Loading @@ -351,7 +312,7 @@ public class DataEnabledSettings { return mPolicyDataEnabled; } private synchronized void setCarrierDataEnabled(boolean enabled) { public synchronized void setCarrierDataEnabled(boolean enabled) { if (mCarrierDataEnabled != enabled) { localLog("CarrierDataEnabled", enabled); mCarrierDataEnabled = enabled; Loading @@ -363,18 +324,6 @@ public class DataEnabledSettings { return mCarrierDataEnabled; } private synchronized void setThermalDataEnabled(boolean enabled) { if (mThermalDataEnabled != enabled) { localLog("ThermalDataEnabled", enabled); mThermalDataEnabled = enabled; updateDataEnabledAndNotify(REASON_THERMAL_DATA_ENABLED); } } public synchronized boolean isThermalDataEnabled() { return mThermalDataEnabled; } public synchronized void updateProvisionedChanged() { updateDataEnabledAndNotify(REASON_PROVISIONED_CHANGED); } Loading @@ -387,27 +336,6 @@ public class DataEnabledSettings { return mIsDataEnabled; } /** * Check if data is enabled for a specific reason {@@TelephonyManager.DataEnabledReason} * * @return {@code true} if the overall data is enabled; {@code false} if not. */ public synchronized boolean isDataEnabledWithReason( @TelephonyManager.DataEnabledReason int reason) { switch (reason) { case TelephonyManager.DATA_ENABLED_REASON_USER: return isUserDataEnabled(); case TelephonyManager.DATA_ENABLED_REASON_CARRIER: return isCarrierDataEnabled(); case TelephonyManager.DATA_ENABLED_REASON_POLICY: return isPolicyDataEnabled(); case TelephonyManager.DATA_ENABLED_REASON_THERMAL: return isThermalDataEnabled(); default: return false; } } private synchronized void updateDataEnabledAndNotify(int reason) { boolean prevDataEnabled = mIsDataEnabled; Loading @@ -424,7 +352,7 @@ public class DataEnabledSettings { } else { mIsDataEnabled = mInternalDataEnabled && (isUserDataEnabled() || mDataEnabledOverride .shouldOverrideDataEnabledSettings(mPhone, ApnSetting.TYPE_ALL)) && mPolicyDataEnabled && mCarrierDataEnabled && mThermalDataEnabled; && mPolicyDataEnabled && mCarrierDataEnabled; } } Loading Loading @@ -541,7 +469,7 @@ public class DataEnabledSettings { .shouldOverrideDataEnabledSettings(mPhone, apnType); return (mInternalDataEnabled && mPolicyDataEnabled && mCarrierDataEnabled && mThermalDataEnabled && (userDataEnabled || isDataEnabledOverridden)); && (userDataEnabled || isDataEnabledOverridden)); } } Loading
src/java/com/android/internal/telephony/vendor/VendorMultiSimSettingController.java +4 −5 Original line number Diff line number Diff line Loading @@ -18,17 +18,17 @@ package com.android.internal.telephony.vendor; import android.content.Context; import android.provider.Settings; import android.provider.Settings.SettingNotFoundException; import android.telephony.SubscriptionInfo; import android.telephony.TelephonyManager; import android.util.Log; import com.android.internal.telephony.GlobalSettingsHelper; import com.android.internal.telephony.MultiSimSettingController; import com.android.internal.telephony.SubscriptionController; import com.android.internal.telephony.Phone; import com.android.internal.telephony.PhoneFactory; import com.android.internal.telephony.SubscriptionController; import java.util.List; import java.util.stream.Collectors; /* * Extending VendorMultiSimSettingController to override default Loading Loading @@ -90,8 +90,7 @@ public class VendorMultiSimSettingController extends MultiSimSettingController { // For active subscription, call setUserDataEnabled through DataEnabledSettings. Phone phone = PhoneFactory.getPhone(mSubController.getPhoneId(currentSubId)); if (phone != null) { phone.getDataEnabledSettings().setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, enable); phone.getDataEnabledSettings().setUserDataEnabled(enable); } } else { // For inactive subscription, directly write into global settings. Loading
tests/telephonytests/src/com/android/internal/telephony/MultiSimSettingControllerTest.java +11 −22 Original line number Diff line number Diff line Loading @@ -313,8 +313,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { mMultiSimSettingControllerUT.notifyCarrierConfigChanged(0, 1); mMultiSimSettingControllerUT.notifyCarrierConfigChanged(1, 2); processAllMessages(); verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); // Enable on non-default sub should trigger setDefaultDataSubId. mMultiSimSettingControllerUT.notifyUserDataEnabled(2, true); Loading @@ -325,8 +324,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { doReturn(2).when(mSubControllerMock).getDefaultDataSubId(); mMultiSimSettingControllerUT.notifyDefaultDataSubChanged(); processAllMessages(); verify(mDataEnabledSettingsMock1).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock1).setUserDataEnabled(false); doReturn(1).when(mSubControllerMock).getDefaultDataSubId(); doReturn(1).when(mSubControllerMock).getDefaultSmsSubId(); Loading Loading @@ -393,8 +391,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { doReturn(1).when(mSubControllerMock).getDefaultDataSubId(); mMultiSimSettingControllerUT.notifyDefaultDataSubChanged(); processAllMessages(); verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); mMultiSimSettingControllerUT.notifyUserDataEnabled(2, false); processAllMessages(); assertFalse(GlobalSettingsHelper.getBoolean( Loading Loading @@ -442,8 +439,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { mMultiSimSettingControllerUT.notifyCarrierConfigChanged(1, 2); processAllMessages(); verify(mSubControllerMock).setDefaultDataSubId(2); verify(mDataEnabledSettingsMock1, never()).setDataEnabled( anyInt(), anyBoolean()); verify(mDataEnabledSettingsMock1, never()).setUserDataEnabled(anyBoolean()); // No user selection needed, no intent should be sent. verify(mContext, never()).sendBroadcast(any()); Loading @@ -460,10 +456,8 @@ public class MultiSimSettingControllerTest extends TelephonyTest { mMultiSimSettingControllerUT.notifyUserDataEnabled(2, true); processAllMessages(); verify(mSubControllerMock, never()).setDefaultDataSubId(anyInt()); verify(mDataEnabledSettingsMock1, never()).setDataEnabled( eq(TelephonyManager.DATA_ENABLED_REASON_USER), anyBoolean()); verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock1, never()).setUserDataEnabled(anyBoolean()); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(anyBoolean()); } @Test Loading Loading @@ -557,16 +551,13 @@ public class MultiSimSettingControllerTest extends TelephonyTest { // loaded on both subscriptions. mMultiSimSettingControllerUT.notifyAllSubscriptionLoaded(); processAllMessages(); verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(false); mMultiSimSettingControllerUT.notifyCarrierConfigChanged(0, 1); processAllMessages(); verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(false); mMultiSimSettingControllerUT.notifyCarrierConfigChanged(1, 2); processAllMessages(); verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); // Switch from sub 2 to sub 3 in phone[1]. clearInvocations(mSubControllerMock); Loading Loading @@ -648,8 +639,7 @@ public class MultiSimSettingControllerTest extends TelephonyTest { SubscriptionManager.INVALID_SUBSCRIPTION_ID); processAllMessages(); // Nothing should happen as carrier config is not ready for sub 2. verify(mDataEnabledSettingsMock2, never()).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2, never()).setUserDataEnabled(false); // Still notify carrier config without specifying subId2, but this time subController // and CarrierConfigManager have subId 2 active and ready. Loading @@ -661,7 +651,6 @@ public class MultiSimSettingControllerTest extends TelephonyTest { SubscriptionManager.INVALID_SUBSCRIPTION_ID); processAllMessages(); // This time user data should be disabled on phone1. verify(mDataEnabledSettingsMock2).setDataEnabled( TelephonyManager.DATA_ENABLED_REASON_USER, false); verify(mDataEnabledSettingsMock2).setUserDataEnabled(false); } }