Merge "Use InternalActivity when ForceVerifyPath is set" into sc-dev am: 6ef5f04d95

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13552669

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I2843e4039a00835550244186d0c64d1aa956b68e
This commit is contained in:
TreeHugger Robot
2021-02-11 14:43:54 +00:00
committed by Automerger Merge Worker
2 changed files with 42 additions and 2 deletions

View File

@@ -312,7 +312,7 @@ public final class ChooseLockSettingsHelper {
switch (mLockPatternUtils.getKeyguardStoredPasswordQuality(effectiveUserId)) {
case DevicePolicyManager.PASSWORD_QUALITY_SOMETHING:
launched = launchConfirmationActivity(request, title, header, description,
returnCredentials
returnCredentials || forceVerifyPath
? ConfirmLockPattern.InternalActivity.class
: ConfirmLockPattern.class, returnCredentials, external,
forceVerifyPath, userId, alternateButton, allowAnyUser,
@@ -325,7 +325,7 @@ public final class ChooseLockSettingsHelper {
case DevicePolicyManager.PASSWORD_QUALITY_COMPLEX:
case DevicePolicyManager.PASSWORD_QUALITY_MANAGED:
launched = launchConfirmationActivity(request, title, header, description,
returnCredentials
returnCredentials || forceVerifyPath
? ConfirmLockPassword.InternalActivity.class
: ConfirmLockPassword.class, returnCredentials, external,
forceVerifyPath, userId, alternateButton, allowAnyUser,

View File

@@ -120,6 +120,46 @@ public class ChooseLockSettingsHelperTest {
.isEqualTo(ThemeHelper.THEME_GLIF_V2);
}
@Test
public void launchConfirmPattern_ForceVerify_shouldLaunchInternalActivity() {
final Activity activity = Robolectric.setupActivity(Activity.class);
ChooseLockSettingsHelper.Builder builder = new ChooseLockSettingsHelper.Builder(activity);
builder.setRequestCode(100)
.setForceVerifyPath(true);
ChooseLockSettingsHelper helper = getChooseLockSettingsHelper(builder);
when(helper.mLockPatternUtils.getKeyguardStoredPasswordQuality(anyInt()))
.thenReturn(DevicePolicyManager.PASSWORD_QUALITY_SOMETHING);
helper.launch();
ShadowActivity shadowActivity = Shadows.shadowOf(activity);
Intent startedIntent = shadowActivity.getNextStartedActivity();
assertEquals(new ComponentName("com.android.settings",
ConfirmLockPattern.InternalActivity.class.getName()),
startedIntent.getComponent());
}
@Test
public void launchConfirmPassword_ForceVerify_shouldLaunchInternalActivity() {
final Activity activity = Robolectric.setupActivity(Activity.class);
ChooseLockSettingsHelper.Builder builder = new ChooseLockSettingsHelper.Builder(activity);
builder.setRequestCode(100)
.setForceVerifyPath(true);
ChooseLockSettingsHelper helper = getChooseLockSettingsHelper(builder);
when(helper.mLockPatternUtils.getKeyguardStoredPasswordQuality(anyInt()))
.thenReturn(DevicePolicyManager.PASSWORD_QUALITY_NUMERIC);
helper.launch();
ShadowActivity shadowActivity = Shadows.shadowOf(activity);
Intent startedIntent = shadowActivity.getNextStartedActivity();
assertEquals(new ComponentName("com.android.settings",
ConfirmLockPassword.InternalActivity.class.getName()),
startedIntent.getComponent());
}
private ChooseLockSettingsHelper getChooseLockSettingsHelper(
ChooseLockSettingsHelper.Builder builder) {
LockPatternUtils mockLockPatternUtils = mock(LockPatternUtils.class);