Check portal on fingerprint intro page
Check SUW portal flag on Fingerprint introduction page. Do not use
suw_max_fingerprints_enrollable as fingerprint count if portal flag is
enable.
Bug: 235655422
Test: m RunSettingsRoboTests \
ROBOTEST_FILTER=FingerprintEnrollIntroductionTest
Test: Manually test "Add another finger" on Deferred and Portal
suggested actions page
Change-Id: I2789d95fb214b5da6d8d03ef77583d064652e69e
diff --git a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
index 8ce3845..71d0c8e 100644
--- a/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
+++ b/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroduction.java
@@ -241,6 +241,8 @@
final boolean isSetupWizard = WizardManagerHelper.isAnySetupWizard(getIntent());
final boolean isDeferredSetupWizard =
WizardManagerHelper.isDeferredSetupWizard(getIntent());
+ final boolean isPortalSetupWizard =
+ WizardManagerHelper.isPortalSetupWizard(getIntent());
if (mFingerprintManager != null) {
final List<FingerprintSensorPropertiesInternal> props =
mFingerprintManager.getSensorPropertiesInternal();
@@ -252,7 +254,7 @@
getApplicationContext()
.getResources()
.getInteger(R.integer.suw_max_fingerprints_enrollable);
- if (isSetupWizard && !isDeferredSetupWizard) {
+ if (isSetupWizard && !isDeferredSetupWizard && !isPortalSetupWizard) {
if (numEnrolledFingerprints >= maxFingerprintsEnrollableIfSUW) {
return R.string.fingerprint_intro_error_max;
} else {
diff --git a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java
index d8852db..1096f40 100644
--- a/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java
+++ b/tests/robotests/src/com/android/settings/biometrics/fingerprint/FingerprintEnrollIntroductionTest.java
@@ -173,4 +173,24 @@
assertThat(result).isEqualTo(R.string.fingerprint_intro_error_max);
}
+
+ @Test
+ public void intro_CheckCanEnrollDuringPortal() {
+ setupFingerprintEnrollIntroWith(
+ new Intent().putExtra(WizardManagerHelper.EXTRA_IS_PORTAL_SETUP, true));
+ setFingerprintManagerToHave(2 /* numEnrollments */);
+ int result = mFingerprintEnrollIntroduction.checkMaxEnrolled();
+
+ assertThat(result).isEqualTo(0);
+ }
+
+ @Test
+ public void intro_CheckMaxEnrolledDuringPortal() {
+ setupFingerprintEnrollIntroWith(
+ new Intent().putExtra(WizardManagerHelper.EXTRA_IS_PORTAL_SETUP, true));
+ setFingerprintManagerToHave(6 /* numEnrollments */);
+ int result = mFingerprintEnrollIntroduction.checkMaxEnrolled();
+
+ assertThat(result).isEqualTo(R.string.fingerprint_intro_error_max);
+ }
}