Loading res/xml/security_advanced_settings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,7 @@ android:order="50" android:key="sim_lock_settings" android:title="@string/sim_lock_settings_category" settings:isPreferenceVisible="@bool/config_show_sim_info" settings:controller="com.android.settings.security.SimLockPreferenceController"> <intent Loading Loading @@ -103,6 +104,7 @@ android:key="confirm_sim_deletion" android:title="@string/confirm_sim_deletion_title" android:summary="@string/confirm_sim_deletion_description" settings:isPreferenceVisible="@bool/config_show_sim_info" settings:controller="com.android.settings.security.ConfirmSimDeletionPreferenceController" /> <!-- work profile security section --> Loading src/com/android/settings/IccLockSettings.java +3 −2 Original line number Diff line number Diff line Loading @@ -174,8 +174,9 @@ public class IccLockSettings extends SettingsPreferenceFragment public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (Utils.isMonkeyRunning()) { finish(); if (Utils.isMonkeyRunning() || !SubscriptionUtil.isSimHardwareVisible(getContext())) { finishFragment(); return; } Loading src/com/android/settings/security/SimLockPreferenceController.java +5 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.core.BasePreferenceController; import com.android.settings.network.SubscriptionUtil; import java.util.List; Loading @@ -50,6 +51,10 @@ public class SimLockPreferenceController extends BasePreferenceController { @Override public int getAvailabilityStatus() { if (!SubscriptionUtil.isSimHardwareVisible(mContext)) { return UNSUPPORTED_ON_DEVICE; } final List<SubscriptionInfo> subInfoList = mSubscriptionManager.getActiveSubscriptionInfoList(); Loading tests/robotests/src/com/android/settings/security/SimLockPreferenceControllerTest.java +23 −1 Original line number Diff line number Diff line Loading @@ -22,9 +22,11 @@ import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import android.content.Context; import android.content.res.Resources; import android.os.PersistableBundle; import android.os.UserManager; import android.telephony.CarrierConfigManager; Loading @@ -35,6 +37,7 @@ import android.telephony.TelephonyManager; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import org.junit.Before; Loading Loading @@ -66,6 +69,7 @@ public class SimLockPreferenceControllerTest { private SimLockPreferenceController mController; private Preference mPreference; private Context mContext; private Resources mResources; @Before public void setUp() { Loading @@ -76,15 +80,28 @@ public class SimLockPreferenceControllerTest { shadowApplication.setSystemService(Context.CARRIER_CONFIG_SERVICE, mCarrierManager); shadowApplication.setSystemService(Context.USER_SERVICE, mUserManager); shadowApplication.setSystemService(Context.TELEPHONY_SERVICE, mTelephonyManager); mContext = RuntimeEnvironment.application; mContext = spy(RuntimeEnvironment.application); mResources = spy(mContext.getResources()); when(mContext.getResources()).thenReturn(mResources); mController = new SimLockPreferenceController(mContext, "key"); mPreference = new Preference(mContext); mPreference.setKey(mController.getPreferenceKey()); when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference); } @Test public void isAvailable_notShowSimUi_false() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(false); assertThat(mController.getAvailabilityStatus()) .isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE); } @Test public void isAvailable_notAdmin_false() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); when(mUserManager.isAdminUser()).thenReturn(false); assertThat(mController.getAvailabilityStatus()) Loading @@ -93,6 +110,7 @@ public class SimLockPreferenceControllerTest { @Test public void isAvailable_simIccNotReady_false() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); when(mUserManager.isAdminUser()).thenReturn(true); assertThat(mController.getAvailabilityStatus()) Loading Loading @@ -124,6 +142,7 @@ public class SimLockPreferenceControllerTest { @Test public void displayPreference_simReady_enablePreference() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); mController.displayPreference(mScreen); assertThat(mPreference.isEnabled()).isFalse(); Loading @@ -140,12 +159,14 @@ public class SimLockPreferenceControllerTest { @Test public void getPreferenceKey_whenGivenValue_returnsGivenValue() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); mController = new SimLockPreferenceController(mContext, "key"); assertThat(mController.getPreferenceKey()).isEqualTo("key"); } private void setupMockIcc() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); final List<SubscriptionInfo> subscriptionInfoList = new ArrayList<>(); SubscriptionInfo info = mock(SubscriptionInfo.class); subscriptionInfoList.add(info); Loading @@ -156,6 +177,7 @@ public class SimLockPreferenceControllerTest { } private void setupMockSimReady() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); final List<SubscriptionInfo> subscriptionInfoList = new ArrayList<>(); SubscriptionInfo info = mock(SubscriptionInfo.class); subscriptionInfoList.add(info); Loading Loading
res/xml/security_advanced_settings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,7 @@ android:order="50" android:key="sim_lock_settings" android:title="@string/sim_lock_settings_category" settings:isPreferenceVisible="@bool/config_show_sim_info" settings:controller="com.android.settings.security.SimLockPreferenceController"> <intent Loading Loading @@ -103,6 +104,7 @@ android:key="confirm_sim_deletion" android:title="@string/confirm_sim_deletion_title" android:summary="@string/confirm_sim_deletion_description" settings:isPreferenceVisible="@bool/config_show_sim_info" settings:controller="com.android.settings.security.ConfirmSimDeletionPreferenceController" /> <!-- work profile security section --> Loading
src/com/android/settings/IccLockSettings.java +3 −2 Original line number Diff line number Diff line Loading @@ -174,8 +174,9 @@ public class IccLockSettings extends SettingsPreferenceFragment public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (Utils.isMonkeyRunning()) { finish(); if (Utils.isMonkeyRunning() || !SubscriptionUtil.isSimHardwareVisible(getContext())) { finishFragment(); return; } Loading
src/com/android/settings/security/SimLockPreferenceController.java +5 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.core.BasePreferenceController; import com.android.settings.network.SubscriptionUtil; import java.util.List; Loading @@ -50,6 +51,10 @@ public class SimLockPreferenceController extends BasePreferenceController { @Override public int getAvailabilityStatus() { if (!SubscriptionUtil.isSimHardwareVisible(mContext)) { return UNSUPPORTED_ON_DEVICE; } final List<SubscriptionInfo> subInfoList = mSubscriptionManager.getActiveSubscriptionInfoList(); Loading
tests/robotests/src/com/android/settings/security/SimLockPreferenceControllerTest.java +23 −1 Original line number Diff line number Diff line Loading @@ -22,9 +22,11 @@ import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import android.content.Context; import android.content.res.Resources; import android.os.PersistableBundle; import android.os.UserManager; import android.telephony.CarrierConfigManager; Loading @@ -35,6 +37,7 @@ import android.telephony.TelephonyManager; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; import org.junit.Before; Loading Loading @@ -66,6 +69,7 @@ public class SimLockPreferenceControllerTest { private SimLockPreferenceController mController; private Preference mPreference; private Context mContext; private Resources mResources; @Before public void setUp() { Loading @@ -76,15 +80,28 @@ public class SimLockPreferenceControllerTest { shadowApplication.setSystemService(Context.CARRIER_CONFIG_SERVICE, mCarrierManager); shadowApplication.setSystemService(Context.USER_SERVICE, mUserManager); shadowApplication.setSystemService(Context.TELEPHONY_SERVICE, mTelephonyManager); mContext = RuntimeEnvironment.application; mContext = spy(RuntimeEnvironment.application); mResources = spy(mContext.getResources()); when(mContext.getResources()).thenReturn(mResources); mController = new SimLockPreferenceController(mContext, "key"); mPreference = new Preference(mContext); mPreference.setKey(mController.getPreferenceKey()); when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference); } @Test public void isAvailable_notShowSimUi_false() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(false); assertThat(mController.getAvailabilityStatus()) .isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE); } @Test public void isAvailable_notAdmin_false() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); when(mUserManager.isAdminUser()).thenReturn(false); assertThat(mController.getAvailabilityStatus()) Loading @@ -93,6 +110,7 @@ public class SimLockPreferenceControllerTest { @Test public void isAvailable_simIccNotReady_false() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); when(mUserManager.isAdminUser()).thenReturn(true); assertThat(mController.getAvailabilityStatus()) Loading Loading @@ -124,6 +142,7 @@ public class SimLockPreferenceControllerTest { @Test public void displayPreference_simReady_enablePreference() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); mController.displayPreference(mScreen); assertThat(mPreference.isEnabled()).isFalse(); Loading @@ -140,12 +159,14 @@ public class SimLockPreferenceControllerTest { @Test public void getPreferenceKey_whenGivenValue_returnsGivenValue() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); mController = new SimLockPreferenceController(mContext, "key"); assertThat(mController.getPreferenceKey()).isEqualTo("key"); } private void setupMockIcc() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); final List<SubscriptionInfo> subscriptionInfoList = new ArrayList<>(); SubscriptionInfo info = mock(SubscriptionInfo.class); subscriptionInfoList.add(info); Loading @@ -156,6 +177,7 @@ public class SimLockPreferenceControllerTest { } private void setupMockSimReady() { when(mResources.getBoolean(R.bool.config_show_sim_info)).thenReturn(true); final List<SubscriptionInfo> subscriptionInfoList = new ArrayList<>(); SubscriptionInfo info = mock(SubscriptionInfo.class); subscriptionInfoList.add(info); Loading