RESTRICT AUTOMERGE Update KeyguardUpdateMonitorTest

To avoid future merge-conflicts downstream
to changes to FaceManager & FingerprintManager methods:
detectFingerprint, detectFace and authenticate.

Bug: 259980077
Test: atest KeyguardUpdateMonitorTest
Change-Id: I933d2d1757b98e39ad9a7a5c0001d9e5456dc44b
This commit is contained in:
Beverly
2023-02-23 14:41:33 +00:00
committed by Beverly Tai
parent b8b7a2304c
commit 0cdb052080

View File

@@ -604,9 +604,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.dispatchStartedGoingToSleep(0 /* why */); mKeyguardUpdateMonitor.dispatchStartedGoingToSleep(0 /* why */);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
verify(mFingerprintManager).authenticate(any(), any(), any(), any(), anyInt(), anyInt(), verifyFingerprintAuthenticateCall();
anyInt()); verifyFingerprintDetectNeverCalled();
verify(mFingerprintManager, never()).detectFingerprint(any(), any(), anyInt());
} }
@Test @Test
@@ -616,9 +615,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.dispatchStartedGoingToSleep(0 /* why */); mKeyguardUpdateMonitor.dispatchStartedGoingToSleep(0 /* why */);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
verify(mFingerprintManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFingerprintAuthenticateNeverCalled();
anyInt(), anyInt()); verifyFingerprintDetectNeverCalled();
verify(mFingerprintManager, never()).detectFingerprint(any(), any(), anyInt());
} }
@Test @Test
@@ -632,8 +630,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.dispatchStartedGoingToSleep(0 /* why */); mKeyguardUpdateMonitor.dispatchStartedGoingToSleep(0 /* why */);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
verify(mFingerprintManager, never()).authenticate(any(), any(), any(), any(), anyInt()); verifyFingerprintAuthenticateNeverCalled();
verify(mFingerprintManager).detectFingerprint(any(), any(), anyInt()); verifyFingerprintDetectCall();
} }
@Test @Test
@@ -722,7 +720,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
public void testTriesToAuthenticate_whenBouncer() { public void testTriesToAuthenticate_whenBouncer() {
setKeyguardBouncerVisibility(true); setKeyguardBouncerVisibility(true);
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
verify(mFaceManager).isHardwareDetected(); verify(mFaceManager).isHardwareDetected();
verify(mFaceManager).hasEnrolledTemplates(anyInt()); verify(mFaceManager).hasEnrolledTemplates(anyInt());
} }
@@ -732,8 +730,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.sendPrimaryBouncerChanged( mKeyguardUpdateMonitor.sendPrimaryBouncerChanged(
/* bouncerIsOrWillBeShowing */ true, /* bouncerFullyShown */ false); /* bouncerIsOrWillBeShowing */ true, /* bouncerFullyShown */ false);
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
} }
@Test @Test
@@ -741,7 +738,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
keyguardIsVisible(); keyguardIsVisible();
mKeyguardUpdateMonitor.dispatchStartedWakingUp(PowerManager.WAKE_REASON_POWER_BUTTON); mKeyguardUpdateMonitor.dispatchStartedWakingUp(PowerManager.WAKE_REASON_POWER_BUTTON);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean());
verifyFaceAuthenticateCall();
verify(mUiEventLogger).logWithInstanceIdAndPosition( verify(mUiEventLogger).logWithInstanceIdAndPosition(
eq(FaceAuthUiEvent.FACE_AUTH_UPDATED_STARTED_WAKING_UP), eq(FaceAuthUiEvent.FACE_AUTH_UPDATED_STARTED_WAKING_UP),
eq(0), eq(0),
@@ -757,8 +755,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
} }
@Test @Test
@@ -769,8 +766,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.dispatchStartedWakingUp(PowerManager.WAKE_REASON_POWER_BUTTON); mKeyguardUpdateMonitor.dispatchStartedWakingUp(PowerManager.WAKE_REASON_POWER_BUTTON);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
} }
@Test @Test
@@ -794,9 +790,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
// THEN face detect and authenticate are NOT triggered // THEN face detect and authenticate are NOT triggered
verify(mFaceManager, never()).detectFace(any(), any(), anyInt()); verifyFaceDetectNeverCalled();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
// THEN biometric help message sent to callback // THEN biometric help message sent to callback
verify(keyguardUpdateMonitorCallback).onBiometricHelp( verify(keyguardUpdateMonitorCallback).onBiometricHelp(
@@ -817,9 +812,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
// FACE detect is triggered, not authenticate // FACE detect is triggered, not authenticate
verify(mFaceManager).detectFace(any(), any(), anyInt()); verifyFaceDetectCall();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
// WHEN bouncer becomes visible // WHEN bouncer becomes visible
setKeyguardBouncerVisibility(true); setKeyguardBouncerVisibility(true);
@@ -827,9 +821,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
// THEN face scanning is not run // THEN face scanning is not run
mKeyguardUpdateMonitor.requestFaceAuth(FaceAuthApiRequestReason.UDFPS_POINTER_DOWN); mKeyguardUpdateMonitor.requestFaceAuth(FaceAuthApiRequestReason.UDFPS_POINTER_DOWN);
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean()); verifyFaceDetectNeverCalled();
verify(mFaceManager, never()).detectFace(any(), any(), anyInt());
} }
@Test @Test
@@ -844,9 +837,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
// FACE detect and authenticate are NOT triggered // FACE detect and authenticate are NOT triggered
verify(mFaceManager, never()).detectFace(any(), any(), anyInt()); verifyFaceDetectNeverCalled();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
} }
@Test @Test
@@ -884,7 +876,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.setKeyguardShowing(true, true); mKeyguardUpdateMonitor.setKeyguardShowing(true, true);
mKeyguardUpdateMonitor.setAssistantVisible(true); mKeyguardUpdateMonitor.setAssistantVisible(true);
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
} }
@Test @Test
@@ -892,12 +884,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.setKeyguardShowing(false, true); mKeyguardUpdateMonitor.setKeyguardShowing(false, true);
mKeyguardUpdateMonitor.setAssistantVisible(true); mKeyguardUpdateMonitor.setAssistantVisible(true);
verify(mFaceManager, never()).authenticate(any(), verifyFaceAuthenticateNeverCalled();
any(),
any(),
any(),
anyInt(),
anyBoolean());
} }
@Test @Test
@@ -908,15 +895,12 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
// THEN fingerprint shouldn't listen // THEN fingerprint shouldn't listen
assertThat(mKeyguardUpdateMonitor.shouldListenForFingerprint(false)).isFalse(); assertThat(mKeyguardUpdateMonitor.shouldListenForFingerprint(false)).isFalse();
verify(mFingerprintManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFingerprintAuthenticateNeverCalled();
anyInt(), anyInt());
// WHEN alternate bouncer is shown // WHEN alternate bouncer is shown
mKeyguardUpdateMonitor.setAlternateBouncerShowing(true); mKeyguardUpdateMonitor.setAlternateBouncerShowing(true);
// THEN make sure FP listening begins // THEN make sure FP listening begins
verify(mFingerprintManager).authenticate(any(), any(), any(), any(), anyInt(), anyInt(), verifyFingerprintAuthenticateCall();
anyInt());
} }
@Test @Test
@@ -928,7 +912,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
KeyguardUpdateMonitor.getCurrentUser(), 0 /* flags */, KeyguardUpdateMonitor.getCurrentUser(), 0 /* flags */,
new ArrayList<>()); new ArrayList<>());
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
} }
@Test @Test
@@ -936,7 +920,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.setKeyguardShowing(true, true); mKeyguardUpdateMonitor.setKeyguardShowing(true, true);
mKeyguardUpdateMonitor.setAssistantVisible(true); mKeyguardUpdateMonitor.setAssistantVisible(true);
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
clearInvocations(mFaceManager); clearInvocations(mFaceManager);
@@ -949,12 +933,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.handleKeyguardReset(); mKeyguardUpdateMonitor.handleKeyguardReset();
assertThat(mKeyguardUpdateMonitor.isFaceDetectionRunning()).isFalse(); assertThat(mKeyguardUpdateMonitor.isFaceDetectionRunning()).isFalse();
verify(mFaceManager, never()).authenticate(any(), verifyFaceAuthenticateNeverCalled();
any(),
any(),
any(),
anyInt(),
anyBoolean());
} }
@Test @Test
@@ -964,8 +943,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.onTrustChanged(true /* enabled */, true /* newlyUnlocked */, mKeyguardUpdateMonitor.onTrustChanged(true /* enabled */, true /* newlyUnlocked */,
KeyguardUpdateMonitor.getCurrentUser(), 0 /* flags */, new ArrayList<>()); KeyguardUpdateMonitor.getCurrentUser(), 0 /* flags */, new ArrayList<>());
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
} }
@Test @Test
@@ -977,9 +955,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
keyguardIsVisible(); keyguardIsVisible();
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean()); verifyFaceDetectNeverCalled();
verify(mFaceManager, never()).detectFace(any(), any(), anyInt());
} }
@Test @Test
@@ -988,16 +965,14 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
.onAuthenticationError(FingerprintManager.BIOMETRIC_ERROR_POWER_PRESSED, ""); .onAuthenticationError(FingerprintManager.BIOMETRIC_ERROR_POWER_PRESSED, "");
// THEN doesn't authenticate immediately // THEN doesn't authenticate immediately
verify(mFingerprintManager, never()).authenticate(any(), verifyFingerprintAuthenticateNeverCalled();
any(), any(), any(), anyInt(), anyInt(), anyInt());
// WHEN all messages (with delays) are processed // WHEN all messages (with delays) are processed
mTestableLooper.moveTimeForward(HAL_POWER_PRESS_TIMEOUT); mTestableLooper.moveTimeForward(HAL_POWER_PRESS_TIMEOUT);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
// THEN fingerprint manager attempts to authenticate again // THEN fingerprint manager attempts to authenticate again
verify(mFingerprintManager).authenticate(any(), verifyFingerprintAuthenticateCall();
any(), any(), any(), anyInt(), anyInt(), anyInt());
} }
@Test @Test
@@ -1009,8 +984,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
setKeyguardBouncerVisibility(true); setKeyguardBouncerVisibility(true);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(), verifyFaceAuthenticateNeverCalled();
anyBoolean());
} }
@Test @Test
@@ -1137,9 +1111,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
verify(mFingerprintManager).authenticate(any(), any(), any(), any(), anyInt(), anyInt(), verifyFingerprintAuthenticateCall();
anyInt());
when(mFingerprintManager.getLockoutModeForUser(eq(FINGERPRINT_SENSOR_ID), eq(newUser))) when(mFingerprintManager.getLockoutModeForUser(eq(FINGERPRINT_SENSOR_ID), eq(newUser)))
.thenReturn(fingerprintLockoutMode); .thenReturn(fingerprintLockoutMode);
@@ -1587,10 +1560,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
public void testFaceDoesNotAuth_afterPinAttempt() { public void testFaceDoesNotAuth_afterPinAttempt() {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
mKeyguardUpdateMonitor.setCredentialAttempted(); mKeyguardUpdateMonitor.setCredentialAttempted();
verify(mFingerprintManager, never()).authenticate(any(), any(), any(), verifyFaceAuthenticateNeverCalled();
any(), anyInt());
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(),
anyBoolean());
} }
@Test @Test
@@ -1965,9 +1935,8 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
verify(mFingerprintManager).authenticate(any(), any(), any(), any(), anyInt(), anyInt(), verifyFingerprintAuthenticateCall();
anyInt());
mKeyguardUpdateMonitor.onFaceAuthenticated(0, false); mKeyguardUpdateMonitor.onFaceAuthenticated(0, false);
// Make sure keyguard is going away after face auth attempt, and that it calls // Make sure keyguard is going away after face auth attempt, and that it calls
@@ -1993,8 +1962,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mKeyguardUpdateMonitor.dispatchDreamingStopped(); mKeyguardUpdateMonitor.dispatchDreamingStopped();
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
verify(mFaceManager, never()).authenticate( verifyFaceAuthenticateNeverCalled();
any(), any(), any(), any(), anyInt(), anyBoolean());
} }
@Test @Test
@@ -2007,15 +1975,14 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
// THEN face auth isn't triggered // THEN face auth isn't triggered
verify(mFaceManager, never()).authenticate( verifyFaceAuthenticateNeverCalled();
any(), any(), any(), any(), anyInt(), anyBoolean());
// WHEN device wakes up from the power button // WHEN device wakes up from the power button
mKeyguardUpdateMonitor.dispatchStartedWakingUp(PowerManager.WAKE_REASON_POWER_BUTTON); mKeyguardUpdateMonitor.dispatchStartedWakingUp(PowerManager.WAKE_REASON_POWER_BUTTON);
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
// THEN face auth is triggered // THEN face auth is triggered
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
} }
@@ -2186,7 +2153,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
verify(mFingerprintManager).authenticate(any(), any(), any(), any(), anyInt(), anyInt(), verify(mFingerprintManager).authenticate(any(), any(), any(), any(), anyInt(), anyInt(),
anyInt()); anyInt());
@@ -2219,7 +2186,7 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
mTestableLooper.processAllMessages(); mTestableLooper.processAllMessages();
keyguardIsVisible(); keyguardIsVisible();
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean()); verifyFaceAuthenticateCall();
final CancellationSignal faceCancel = spy(mKeyguardUpdateMonitor.mFaceCancelSignal); final CancellationSignal faceCancel = spy(mKeyguardUpdateMonitor.mFaceCancelSignal);
mKeyguardUpdateMonitor.mFaceCancelSignal = faceCancel; mKeyguardUpdateMonitor.mFaceCancelSignal = faceCancel;
@@ -2445,6 +2412,41 @@ public class KeyguardUpdateMonitorTest extends SysuiTestCase {
eq(false)); eq(false));
} }
private void verifyFingerprintAuthenticateNeverCalled() {
verify(mFingerprintManager, never()).authenticate(any(), any(), any(), any(), anyInt(),
anyInt(), anyInt());
}
private void verifyFingerprintAuthenticateCall() {
verify(mFingerprintManager).authenticate(any(), any(), any(), any(), anyInt(), anyInt(),
anyInt());
}
private void verifyFingerprintDetectNeverCalled() {
verify(mFingerprintManager, never()).detectFingerprint(any(), any(), anyInt());
}
private void verifyFingerprintDetectCall() {
verify(mFingerprintManager).detectFingerprint(any(), any(), anyInt());
}
private void verifyFaceAuthenticateNeverCalled() {
verify(mFaceManager, never()).authenticate(any(), any(), any(), any(), anyInt(),
anyBoolean());
}
private void verifyFaceAuthenticateCall() {
verify(mFaceManager).authenticate(any(), any(), any(), any(), anyInt(), anyBoolean());
}
private void verifyFaceDetectNeverCalled() {
verify(mFaceManager, never()).detectFace(any(), any(), anyInt());
}
private void verifyFaceDetectCall() {
verify(mFaceManager).detectFace(any(), any(), anyInt());
}
private void userDeviceLockDown() { private void userDeviceLockDown() {
when(mStrongAuthTracker.isUnlockingWithBiometricAllowed(anyBoolean())).thenReturn(false); when(mStrongAuthTracker.isUnlockingWithBiometricAllowed(anyBoolean())).thenReturn(false);
when(mStrongAuthTracker.getStrongAuthForUser(mCurrentUserId)) when(mStrongAuthTracker.getStrongAuthForUser(mCurrentUserId))