Display TOO_SHORT_WHEN_ALL_NUMERIC
To distinguish the requirement between all numeric and not all numeric when COMPLEXITY_HIGH. Fix: 227149118 Fix: 173167839 Test: manual & robolectric Change-Id: I1f682625d8e86963218dda43b626a9e55d169fb3
This commit is contained in:
@@ -1610,6 +1610,13 @@
|
||||
<item quantity="one">Must contain at least <xliff:g id="count" example="1">%d</xliff:g> character</item>
|
||||
<item quantity="other">Must be at least <xliff:g id="count" example="3">%d</xliff:g> characters</item>
|
||||
</plurals>
|
||||
<!-- Hint shown in dialog screen when password is too short and only using numbers. [CHAR LIMIT=NONE] -->
|
||||
<string name="lockpassword_password_too_short_all_numeric">
|
||||
{count, plural,
|
||||
=1 {If using only numbers, must be at least 1 digit}
|
||||
other {If using only numbers, must be at least # digits}
|
||||
}
|
||||
</string>
|
||||
<!-- Hint shown in dialog screen when PIN is too short -->
|
||||
<plurals name="lockpassword_pin_too_short">
|
||||
<item quantity="one">PIN must contain at least <xliff:g id="count" example="1">%d</xliff:g> digit</item>
|
||||
|
@@ -39,6 +39,7 @@ import static com.android.internal.widget.PasswordValidationError.NOT_ENOUGH_UPP
|
||||
import static com.android.internal.widget.PasswordValidationError.RECENTLY_USED;
|
||||
import static com.android.internal.widget.PasswordValidationError.TOO_LONG;
|
||||
import static com.android.internal.widget.PasswordValidationError.TOO_SHORT;
|
||||
import static com.android.internal.widget.PasswordValidationError.TOO_SHORT_WHEN_ALL_NUMERIC;
|
||||
import static com.android.settings.password.ChooseLockSettingsHelper.EXTRA_KEY_UNIFICATION_PROFILE_CREDENTIAL;
|
||||
import static com.android.settings.password.ChooseLockSettingsHelper.EXTRA_KEY_UNIFICATION_PROFILE_ID;
|
||||
|
||||
@@ -91,6 +92,7 @@ import com.android.settings.SetupWizardUtils;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.core.InstrumentedFragment;
|
||||
import com.android.settings.notification.RedactionInterstitial;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import com.google.android.setupcompat.template.FooterBarMixin;
|
||||
import com.google.android.setupcompat.template.FooterButton;
|
||||
@@ -834,6 +836,11 @@ public class ChooseLockPassword extends SettingsActivity {
|
||||
: R.plurals.lockpassword_pin_too_short,
|
||||
error.requirement, error.requirement));
|
||||
break;
|
||||
case TOO_SHORT_WHEN_ALL_NUMERIC:
|
||||
messages.add(
|
||||
StringUtil.getIcuPluralsString(getContext(), error.requirement,
|
||||
R.string.lockpassword_password_too_short_all_numeric));
|
||||
break;
|
||||
case TOO_LONG:
|
||||
messages.add(getResources().getQuantityString(
|
||||
mIsAlphaMode
|
||||
|
@@ -56,7 +56,6 @@ import com.google.android.setupdesign.GlifLayout;
|
||||
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.robolectric.Robolectric;
|
||||
@@ -74,13 +73,10 @@ import org.robolectric.shadows.ShadowDrawable;
|
||||
})
|
||||
public class ChooseLockPasswordTest {
|
||||
|
||||
private ShadowDevicePolicyManager mShadowDpm;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
SettingsShadowResources.overrideResource(
|
||||
com.android.internal.R.string.config_headlineFontFamily, "");
|
||||
mShadowDpm = ShadowDevicePolicyManager.getShadow();
|
||||
}
|
||||
|
||||
@After
|
||||
@@ -191,7 +187,6 @@ public class ChooseLockPasswordTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
public void processAndValidatePasswordRequirements_minPasswordComplexityStricter_password() {
|
||||
PasswordPolicy policy = new PasswordPolicy();
|
||||
policy.quality = PASSWORD_QUALITY_SOMETHING;
|
||||
@@ -201,7 +196,6 @@ public class ChooseLockPasswordTest {
|
||||
/* minComplexity= */ PASSWORD_COMPLEXITY_MEDIUM,
|
||||
/* passwordType= */ PASSWORD_QUALITY_ALPHABETIC,
|
||||
/* userEnteredPassword= */ LockscreenCredential.createNone(),
|
||||
"Must contain at least 1 non-numerical character",
|
||||
"Must be at least 4 characters");
|
||||
}
|
||||
|
||||
@@ -323,7 +317,6 @@ public class ChooseLockPasswordTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
public void processAndValidatePasswordRequirements_requirementsUpdateAccordingToMinComplexityAndUserInput_empty() {
|
||||
PasswordPolicy policy = new PasswordPolicy();
|
||||
policy.quality = PASSWORD_QUALITY_UNSPECIFIED;
|
||||
@@ -334,11 +327,10 @@ public class ChooseLockPasswordTest {
|
||||
/* passwordType= */ PASSWORD_QUALITY_ALPHABETIC,
|
||||
/* userEnteredPassword= */ LockscreenCredential.createNone(),
|
||||
"Must be at least 6 characters",
|
||||
"Must contain at least 1 non-numerical character");
|
||||
"If using only numbers, must be at least 8 digits");
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
public void processAndValidatePasswordRequirements_requirementsUpdateAccordingToMinComplexityAndUserInput_numeric() {
|
||||
PasswordPolicy policy = new PasswordPolicy();
|
||||
policy.quality = PASSWORD_QUALITY_UNSPECIFIED;
|
||||
@@ -349,7 +341,7 @@ public class ChooseLockPasswordTest {
|
||||
/* passwordType= */ PASSWORD_QUALITY_ALPHABETIC,
|
||||
/* userEnteredPassword= */ LockscreenCredential.createPassword("1"),
|
||||
"Must be at least 6 characters",
|
||||
"Must contain at least 1 non-numerical character");
|
||||
"If using only numbers, must be at least 8 digits");
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Reference in New Issue
Block a user