Loading src/com/android/settings/development/OemUnlockPreferenceController.java +4 −9 Original line number Diff line number Diff line Loading @@ -21,13 +21,12 @@ import static com.android.settings.development.DevelopmentOptionsActivityRequest import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.res.Resources; import android.os.Build; import android.os.UserHandle; import android.os.UserManager; import android.service.oemlock.OemLockManager; import android.telephony.TelephonyManager; import android.util.Log; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; Loading Loading @@ -56,15 +55,11 @@ public class OemUnlockPreferenceController extends DeveloperOptionsPreferenceCon DevelopmentSettingsDashboardFragment fragment) { super(context); if (context.getPackageManager().hasSystemFeature(PackageManager .FEATURE_TELEPHONY_CARRIERLOCK)) { mOemLockManager = (OemLockManager) context.getSystemService(Context.OEM_LOCK_SERVICE); } else { if (Build.IS_EMULATOR && Build.IS_ENG) { mOemLockManager = null; Log.i(TAG, "Missing FEATURE_TELEPHONY_CARRIERLOCK, OemUnlock Preference" + " Controller disabled."); } else { mOemLockManager = (OemLockManager) context.getSystemService(Context.OEM_LOCK_SERVICE); } mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE); mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); mFragment = fragment; Loading tests/robotests/src/com/android/settings/development/OemUnlockPreferenceControllerTest.java +16 −5 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import android.app.Activity; import android.content.Context; import android.content.pm.PackageManager; import android.content.res.Resources; import android.os.Build; import android.os.UserManager; import android.service.oemlock.OemLockManager; import android.telephony.TelephonyManager; Loading @@ -48,6 +49,8 @@ import org.mockito.Answers; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; import org.robolectric.util.ReflectionHelpers; @RunWith(RobolectricTestRunner.class) public class OemUnlockPreferenceControllerTest { Loading Loading @@ -93,11 +96,19 @@ public class OemUnlockPreferenceControllerTest { } @Test public void OemUnlockPreferenceController_shouldNotCrashWhenMissingFEATURE_TELEPHONY_CARRIERLOCK() { when(mContext.getPackageManager().hasSystemFeature(PackageManager .FEATURE_TELEPHONY_CARRIERLOCK)).thenReturn(false); when(mContext.getSystemService(Context.OEM_LOCK_SERVICE)).thenThrow (new RuntimeException()); @Config(qualifiers = "mcc999") public void OemUnlockPreferenceController_shouldNotCrashInEmulatorEngBuild() { ReflectionHelpers.setStaticField(Build.class, "IS_EMULATOR", true); ReflectionHelpers.setStaticField(Build.class, "IS_ENG", true); new OemUnlockPreferenceController(mContext, mActivity, mFragment); } @Test @Config(qualifiers = "mcc999") public void OemUnlockPreferenceController_shouldNotCrashInOtherBuild() { ReflectionHelpers.setStaticField(Build.class, "IS_EMULATOR", false); ReflectionHelpers.setStaticField(Build.class, "IS_ENG", false); new OemUnlockPreferenceController(mContext, mActivity, mFragment); } Loading Loading
src/com/android/settings/development/OemUnlockPreferenceController.java +4 −9 Original line number Diff line number Diff line Loading @@ -21,13 +21,12 @@ import static com.android.settings.development.DevelopmentOptionsActivityRequest import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.res.Resources; import android.os.Build; import android.os.UserHandle; import android.os.UserManager; import android.service.oemlock.OemLockManager; import android.telephony.TelephonyManager; import android.util.Log; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; Loading Loading @@ -56,15 +55,11 @@ public class OemUnlockPreferenceController extends DeveloperOptionsPreferenceCon DevelopmentSettingsDashboardFragment fragment) { super(context); if (context.getPackageManager().hasSystemFeature(PackageManager .FEATURE_TELEPHONY_CARRIERLOCK)) { mOemLockManager = (OemLockManager) context.getSystemService(Context.OEM_LOCK_SERVICE); } else { if (Build.IS_EMULATOR && Build.IS_ENG) { mOemLockManager = null; Log.i(TAG, "Missing FEATURE_TELEPHONY_CARRIERLOCK, OemUnlock Preference" + " Controller disabled."); } else { mOemLockManager = (OemLockManager) context.getSystemService(Context.OEM_LOCK_SERVICE); } mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE); mTelephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); mFragment = fragment; Loading
tests/robotests/src/com/android/settings/development/OemUnlockPreferenceControllerTest.java +16 −5 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import android.app.Activity; import android.content.Context; import android.content.pm.PackageManager; import android.content.res.Resources; import android.os.Build; import android.os.UserManager; import android.service.oemlock.OemLockManager; import android.telephony.TelephonyManager; Loading @@ -48,6 +49,8 @@ import org.mockito.Answers; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; import org.robolectric.annotation.Config; import org.robolectric.util.ReflectionHelpers; @RunWith(RobolectricTestRunner.class) public class OemUnlockPreferenceControllerTest { Loading Loading @@ -93,11 +96,19 @@ public class OemUnlockPreferenceControllerTest { } @Test public void OemUnlockPreferenceController_shouldNotCrashWhenMissingFEATURE_TELEPHONY_CARRIERLOCK() { when(mContext.getPackageManager().hasSystemFeature(PackageManager .FEATURE_TELEPHONY_CARRIERLOCK)).thenReturn(false); when(mContext.getSystemService(Context.OEM_LOCK_SERVICE)).thenThrow (new RuntimeException()); @Config(qualifiers = "mcc999") public void OemUnlockPreferenceController_shouldNotCrashInEmulatorEngBuild() { ReflectionHelpers.setStaticField(Build.class, "IS_EMULATOR", true); ReflectionHelpers.setStaticField(Build.class, "IS_ENG", true); new OemUnlockPreferenceController(mContext, mActivity, mFragment); } @Test @Config(qualifiers = "mcc999") public void OemUnlockPreferenceController_shouldNotCrashInOtherBuild() { ReflectionHelpers.setStaticField(Build.class, "IS_EMULATOR", false); ReflectionHelpers.setStaticField(Build.class, "IS_ENG", false); new OemUnlockPreferenceController(mContext, mActivity, mFragment); } Loading