Loading src/com/android/settings/network/telephony/TelephonyBasePreferenceController.java +18 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package com.android.settings.network.telephony; import android.content.Context; import android.os.PersistableBundle; import android.telephony.CarrierConfigManager; import android.telephony.SubscriptionManager; import com.android.settings.core.BasePreferenceController; Loading @@ -37,4 +39,20 @@ public abstract class TelephonyBasePreferenceController extends BasePreferenceCo public int getAvailabilityStatus() { return MobileNetworkUtils.getAvailability(mContext, mSubId, this::getAvailabilityStatus); } /** * Get carrier config based on specific subscription id. * * @param subId is the subscription id * @return {@link PersistableBundle} of carrier config, or {@code null} when carrier config * is not available. */ public PersistableBundle getCarrierConfigForSubId(int subId) { if (!SubscriptionManager.isValidSubscriptionId(subId)) { return null; } final CarrierConfigManager carrierConfigMgr = mContext.getSystemService(CarrierConfigManager.class); return carrierConfigMgr.getConfigForSubId(subId); } } src/com/android/settings/network/telephony/TelephonyTogglePreferenceController.java +18 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package com.android.settings.network.telephony; import android.content.Context; import android.os.PersistableBundle; import android.telephony.CarrierConfigManager; import android.telephony.SubscriptionManager; import com.android.settings.core.TogglePreferenceController; Loading @@ -37,4 +39,20 @@ public abstract class TelephonyTogglePreferenceController extends TogglePreferen public int getAvailabilityStatus() { return MobileNetworkUtils.getAvailability(mContext, mSubId, this::getAvailabilityStatus); } /** * Get carrier config based on specific subscription id. * * @param subId is the subscription id * @return {@link PersistableBundle} of carrier config, or {@code null} when carrier config * is not available. */ public PersistableBundle getCarrierConfigForSubId(int subId) { if (!SubscriptionManager.isValidSubscriptionId(subId)) { return null; } final CarrierConfigManager carrierConfigMgr = mContext.getSystemService(CarrierConfigManager.class); return carrierConfigMgr.getConfigForSubId(subId); } } tests/robotests/src/com/android/settings/network/telephony/TelephonyBasePreferenceControllerTest.java +8 −3 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import android.content.Context; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; import org.junit.Before; Loading @@ -32,12 +33,16 @@ import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import java.util.Arrays; @RunWith(RobolectricTestRunner.class) public class TelephonyBasePreferenceControllerTest { private static final int VALID_SUB_ID = 1; @Mock private SubscriptionManager mSubscriptionManager; @Mock private SubscriptionInfo mSubscriptionInfo; private TestPreferenceController mPreferenceController; private Context mContext; Loading @@ -49,7 +54,7 @@ public class TelephonyBasePreferenceControllerTest { mContext = spy(RuntimeEnvironment.application); when(mContext.getSystemService(SubscriptionManager.class)) .thenReturn(mSubscriptionManager); when(mSubscriptionManager.getActiveSubscriptionIdList()).thenReturn(new int[]{}); when(mSubscriptionInfo.getSubscriptionId()).thenReturn(VALID_SUB_ID); mPreferenceController = new TestPreferenceController(mContext, "prefKey"); } Loading @@ -62,8 +67,8 @@ public class TelephonyBasePreferenceControllerTest { @Test public void isAvailable_noIdSetHoweverHasDefaultOne_returnTrue() { when(mSubscriptionManager.getActiveSubscriptionIdList()) .thenReturn(new int[]{VALID_SUB_ID}); when(mSubscriptionManager.getActiveSubscriptionInfoList()).thenReturn( Arrays.asList(mSubscriptionInfo)); assertThat(mPreferenceController.isAvailable()).isTrue(); } Loading Loading
src/com/android/settings/network/telephony/TelephonyBasePreferenceController.java +18 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package com.android.settings.network.telephony; import android.content.Context; import android.os.PersistableBundle; import android.telephony.CarrierConfigManager; import android.telephony.SubscriptionManager; import com.android.settings.core.BasePreferenceController; Loading @@ -37,4 +39,20 @@ public abstract class TelephonyBasePreferenceController extends BasePreferenceCo public int getAvailabilityStatus() { return MobileNetworkUtils.getAvailability(mContext, mSubId, this::getAvailabilityStatus); } /** * Get carrier config based on specific subscription id. * * @param subId is the subscription id * @return {@link PersistableBundle} of carrier config, or {@code null} when carrier config * is not available. */ public PersistableBundle getCarrierConfigForSubId(int subId) { if (!SubscriptionManager.isValidSubscriptionId(subId)) { return null; } final CarrierConfigManager carrierConfigMgr = mContext.getSystemService(CarrierConfigManager.class); return carrierConfigMgr.getConfigForSubId(subId); } }
src/com/android/settings/network/telephony/TelephonyTogglePreferenceController.java +18 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,8 @@ package com.android.settings.network.telephony; import android.content.Context; import android.os.PersistableBundle; import android.telephony.CarrierConfigManager; import android.telephony.SubscriptionManager; import com.android.settings.core.TogglePreferenceController; Loading @@ -37,4 +39,20 @@ public abstract class TelephonyTogglePreferenceController extends TogglePreferen public int getAvailabilityStatus() { return MobileNetworkUtils.getAvailability(mContext, mSubId, this::getAvailabilityStatus); } /** * Get carrier config based on specific subscription id. * * @param subId is the subscription id * @return {@link PersistableBundle} of carrier config, or {@code null} when carrier config * is not available. */ public PersistableBundle getCarrierConfigForSubId(int subId) { if (!SubscriptionManager.isValidSubscriptionId(subId)) { return null; } final CarrierConfigManager carrierConfigMgr = mContext.getSystemService(CarrierConfigManager.class); return carrierConfigMgr.getConfigForSubId(subId); } }
tests/robotests/src/com/android/settings/network/telephony/TelephonyBasePreferenceControllerTest.java +8 −3 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import android.content.Context; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; import org.junit.Before; Loading @@ -32,12 +33,16 @@ import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.RuntimeEnvironment; import java.util.Arrays; @RunWith(RobolectricTestRunner.class) public class TelephonyBasePreferenceControllerTest { private static final int VALID_SUB_ID = 1; @Mock private SubscriptionManager mSubscriptionManager; @Mock private SubscriptionInfo mSubscriptionInfo; private TestPreferenceController mPreferenceController; private Context mContext; Loading @@ -49,7 +54,7 @@ public class TelephonyBasePreferenceControllerTest { mContext = spy(RuntimeEnvironment.application); when(mContext.getSystemService(SubscriptionManager.class)) .thenReturn(mSubscriptionManager); when(mSubscriptionManager.getActiveSubscriptionIdList()).thenReturn(new int[]{}); when(mSubscriptionInfo.getSubscriptionId()).thenReturn(VALID_SUB_ID); mPreferenceController = new TestPreferenceController(mContext, "prefKey"); } Loading @@ -62,8 +67,8 @@ public class TelephonyBasePreferenceControllerTest { @Test public void isAvailable_noIdSetHoweverHasDefaultOne_returnTrue() { when(mSubscriptionManager.getActiveSubscriptionIdList()) .thenReturn(new int[]{VALID_SUB_ID}); when(mSubscriptionManager.getActiveSubscriptionInfoList()).thenReturn( Arrays.asList(mSubscriptionInfo)); assertThat(mPreferenceController.isAvailable()).isTrue(); } Loading