Merge "PasswordPolicy.getMinMetrics PIN" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
60e65b4b6f
@@ -20,6 +20,7 @@ import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_ALPHABETIC;
|
|||||||
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC;
|
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC;
|
||||||
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_BIOMETRIC_WEAK;
|
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_BIOMETRIC_WEAK;
|
||||||
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_COMPLEX;
|
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_COMPLEX;
|
||||||
|
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_NUMERIC;
|
||||||
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_NUMERIC_COMPLEX;
|
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_NUMERIC_COMPLEX;
|
||||||
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_SOMETHING;
|
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_SOMETHING;
|
||||||
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED;
|
import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED;
|
||||||
@@ -27,6 +28,7 @@ import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED
|
|||||||
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE;
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE;
|
||||||
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PASSWORD;
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PASSWORD;
|
||||||
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PATTERN;
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PATTERN;
|
||||||
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PIN;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@hide}
|
* {@hide}
|
||||||
@@ -58,14 +60,20 @@ public class PasswordPolicy {
|
|||||||
} else if (quality == PASSWORD_QUALITY_BIOMETRIC_WEAK
|
} else if (quality == PASSWORD_QUALITY_BIOMETRIC_WEAK
|
||||||
|| quality == PASSWORD_QUALITY_SOMETHING) {
|
|| quality == PASSWORD_QUALITY_SOMETHING) {
|
||||||
return new PasswordMetrics(CREDENTIAL_TYPE_PATTERN);
|
return new PasswordMetrics(CREDENTIAL_TYPE_PATTERN);
|
||||||
} // quality is NUMERIC or stronger.
|
} else if (quality == PASSWORD_QUALITY_NUMERIC
|
||||||
|
|| quality == PASSWORD_QUALITY_NUMERIC_COMPLEX) {
|
||||||
|
PasswordMetrics result = new PasswordMetrics(CREDENTIAL_TYPE_PIN);
|
||||||
|
result.length = length;
|
||||||
|
if (quality == PASSWORD_QUALITY_NUMERIC_COMPLEX) {
|
||||||
|
result.seqLength = PasswordMetrics.MAX_ALLOWED_SEQUENCE;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
} // quality is ALPHABETIC or stronger.
|
||||||
|
|
||||||
PasswordMetrics result = new PasswordMetrics(CREDENTIAL_TYPE_PASSWORD);
|
PasswordMetrics result = new PasswordMetrics(CREDENTIAL_TYPE_PASSWORD);
|
||||||
result.length = length;
|
result.length = length;
|
||||||
|
|
||||||
if (quality == PASSWORD_QUALITY_NUMERIC_COMPLEX) {
|
if (quality == PASSWORD_QUALITY_ALPHABETIC) {
|
||||||
result.seqLength = PasswordMetrics.MAX_ALLOWED_SEQUENCE;
|
|
||||||
} else if (quality == PASSWORD_QUALITY_ALPHABETIC) {
|
|
||||||
result.nonNumeric = 1;
|
result.nonNumeric = 1;
|
||||||
} else if (quality == PASSWORD_QUALITY_ALPHANUMERIC) {
|
} else if (quality == PASSWORD_QUALITY_ALPHANUMERIC) {
|
||||||
result.numeric = 1;
|
result.numeric = 1;
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import static android.app.admin.DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED
|
|||||||
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE;
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_NONE;
|
||||||
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PASSWORD;
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PASSWORD;
|
||||||
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PATTERN;
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PATTERN;
|
||||||
|
import static com.android.internal.widget.LockPatternUtils.CREDENTIAL_TYPE_PIN;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
|
|
||||||
@@ -80,7 +81,7 @@ public class PasswordPolicyTest {
|
|||||||
public void testGetMinMetrics_numeric() {
|
public void testGetMinMetrics_numeric() {
|
||||||
PasswordPolicy policy = testPolicy(PASSWORD_QUALITY_NUMERIC);
|
PasswordPolicy policy = testPolicy(PASSWORD_QUALITY_NUMERIC);
|
||||||
PasswordMetrics minMetrics = policy.getMinMetrics();
|
PasswordMetrics minMetrics = policy.getMinMetrics();
|
||||||
assertEquals(CREDENTIAL_TYPE_PASSWORD, minMetrics.credType);
|
assertEquals(CREDENTIAL_TYPE_PIN, minMetrics.credType);
|
||||||
assertEquals(TEST_VALUE, minMetrics.length);
|
assertEquals(TEST_VALUE, minMetrics.length);
|
||||||
assertEquals(0, minMetrics.numeric); // numeric can doesn't really require digits.
|
assertEquals(0, minMetrics.numeric); // numeric can doesn't really require digits.
|
||||||
assertEquals(0, minMetrics.letters);
|
assertEquals(0, minMetrics.letters);
|
||||||
@@ -104,7 +105,7 @@ public class PasswordPolicyTest {
|
|||||||
public void testGetMinMetrics_numericComplex() {
|
public void testGetMinMetrics_numericComplex() {
|
||||||
PasswordPolicy policy = testPolicy(PASSWORD_QUALITY_NUMERIC_COMPLEX);
|
PasswordPolicy policy = testPolicy(PASSWORD_QUALITY_NUMERIC_COMPLEX);
|
||||||
PasswordMetrics minMetrics = policy.getMinMetrics();
|
PasswordMetrics minMetrics = policy.getMinMetrics();
|
||||||
assertEquals(CREDENTIAL_TYPE_PASSWORD, minMetrics.credType);
|
assertEquals(CREDENTIAL_TYPE_PIN, minMetrics.credType);
|
||||||
assertEquals(TEST_VALUE, minMetrics.length);
|
assertEquals(TEST_VALUE, minMetrics.length);
|
||||||
assertEquals(0, minMetrics.numeric);
|
assertEquals(0, minMetrics.numeric);
|
||||||
assertEquals(0, minMetrics.letters);
|
assertEquals(0, minMetrics.letters);
|
||||||
|
|||||||
Reference in New Issue
Block a user