Add mandatory biometric prompt to platform surfaces (5/N)
1. For biometric settings, request biometric prompt only after successful credential verification and no auth request after enrollment 2. Differentiate between mandatory biometrics ineffective error and other biometric errors Flag: android.hardware.biometrics.flags.mandatory_biometrics Bug: 358176202 Bug: 358179610 Test: atest UtilsTest DevelopmentSettingsDashboardFragmentTest MainClearTest BuildNumberPreferenceControllerTest CombinedBiometricProfileSettingsTest Change-Id: I778dd5403dd5ab64d8cc39bd88b22c4d39182e94
This commit is contained in:
@@ -530,40 +530,40 @@ public class UtilsTest {
|
||||
|
||||
@Test
|
||||
@EnableFlags(Flags.FLAG_MANDATORY_BIOMETRICS)
|
||||
public void testRequestBiometricAuthentication_biometricManagerNull_shouldReturnFalse() {
|
||||
public void testRequestBiometricAuthentication_biometricManagerNull_shouldReturnNotActive() {
|
||||
when(mContext.getSystemService(BiometricManager.class)).thenReturn(null);
|
||||
assertThat(Utils.requestBiometricAuthenticationForMandatoryBiometrics(mContext,
|
||||
false /* biometricsSuccessfullyAuthenticated */,
|
||||
false /* biometricsAuthenticationRequested */, USER_ID)).isFalse();
|
||||
false /* biometricsAuthenticationRequested */, USER_ID)).isEqualTo(
|
||||
Utils.BiometricStatus.NOT_ACTIVE);
|
||||
}
|
||||
|
||||
@Test
|
||||
@EnableFlags(Flags.FLAG_MANDATORY_BIOMETRICS)
|
||||
public void testRequestBiometricAuthentication_biometricManagerReturnsSuccess_shouldReturnTrue() {
|
||||
public void testRequestBiometricAuthentication_biometricManagerReturnsSuccess_shouldReturnOk() {
|
||||
when(mBiometricManager.canAuthenticate(USER_ID,
|
||||
BiometricManager.Authenticators.MANDATORY_BIOMETRICS))
|
||||
.thenReturn(BiometricManager.BIOMETRIC_SUCCESS);
|
||||
final boolean requestBiometricAuthenticationForMandatoryBiometrics =
|
||||
final Utils.BiometricStatus requestBiometricAuthenticationForMandatoryBiometrics =
|
||||
Utils.requestBiometricAuthenticationForMandatoryBiometrics(mContext,
|
||||
false /* biometricsSuccessfullyAuthenticated */,
|
||||
false /* biometricsAuthenticationRequested */, USER_ID);
|
||||
assertThat(requestBiometricAuthenticationForMandatoryBiometrics).isTrue();
|
||||
false /* biometricsAuthenticationRequested */, USER_ID);
|
||||
assertThat(requestBiometricAuthenticationForMandatoryBiometrics).isEqualTo(
|
||||
Utils.BiometricStatus.OK);
|
||||
}
|
||||
|
||||
@Test
|
||||
@EnableFlags(Flags.FLAG_MANDATORY_BIOMETRICS)
|
||||
public void testRequestBiometricAuthentication_biometricManagerReturnsError_shouldReturnFalse() {
|
||||
public void testRequestBiometricAuthentication_biometricManagerReturnsError_shouldReturnError() {
|
||||
when(mBiometricManager.canAuthenticate(anyInt(),
|
||||
eq(BiometricManager.Authenticators.MANDATORY_BIOMETRICS)))
|
||||
.thenReturn(BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE);
|
||||
assertThat(Utils.requestBiometricAuthenticationForMandatoryBiometrics(mContext,
|
||||
false /* biometricsSuccessfullyAuthenticated */,
|
||||
false /* biometricsAuthenticationRequested */, USER_ID)).isFalse();
|
||||
false /* biometricsAuthenticationRequested */, USER_ID)).isEqualTo(
|
||||
Utils.BiometricStatus.ERROR);
|
||||
}
|
||||
|
||||
@Test
|
||||
@EnableFlags(Flags.FLAG_MANDATORY_BIOMETRICS)
|
||||
public void testRequestBiometricAuthentication_biometricManagerReturnsSuccessForDifferentUser_shouldReturnFalse() {
|
||||
public void testRequestBiometricAuthentication_biometricManagerReturnsSuccessForDifferentUser_shouldReturnError() {
|
||||
when(mBiometricManager.canAuthenticate(anyInt(),
|
||||
eq(BiometricManager.Authenticators.MANDATORY_BIOMETRICS)))
|
||||
.thenReturn(BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE);
|
||||
@@ -571,8 +571,8 @@ public class UtilsTest {
|
||||
BiometricManager.Authenticators.MANDATORY_BIOMETRICS))
|
||||
.thenReturn(BiometricManager.BIOMETRIC_SUCCESS);
|
||||
assertThat(Utils.requestBiometricAuthenticationForMandatoryBiometrics(mContext,
|
||||
false /* biometricsSuccessfullyAuthenticated */,
|
||||
false /* biometricsAuthenticationRequested */, USER_ID)).isFalse();
|
||||
false /* biometricsAuthenticationRequested */, USER_ID)).isEqualTo(
|
||||
Utils.BiometricStatus.ERROR);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
Reference in New Issue
Block a user