Loading packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java +5 −0 Original line number Diff line number Diff line Loading @@ -480,6 +480,11 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab sCurrentUser = currentUser; } /** * @deprecated This can potentially return unexpected values in a multi user scenario * as this state is managed by another component. Consider using {@link UserTracker}. */ @Deprecated public synchronized static int getCurrentUser() { return sCurrentUser; } Loading packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java +11 −5 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import static android.view.View.VISIBLE; import static com.android.keyguard.KeyguardUpdateMonitor.BIOMETRIC_HELP_FACE_NOT_AVAILABLE; import static com.android.keyguard.KeyguardUpdateMonitor.BIOMETRIC_HELP_FACE_NOT_RECOGNIZED; import static com.android.keyguard.KeyguardUpdateMonitor.BIOMETRIC_HELP_FINGERPRINT_NOT_RECOGNIZED; import static com.android.keyguard.KeyguardUpdateMonitor.getCurrentUser; import static com.android.systemui.DejankUtils.whitelistIpcs; import static com.android.systemui.keyguard.KeyguardIndicationRotateTextViewController.IMPORTANT_MSG_MIN_DURATION; import static com.android.systemui.keyguard.KeyguardIndicationRotateTextViewController.INDICATION_TYPE_ALIGNMENT; Loading Loading @@ -99,6 +98,7 @@ import com.android.systemui.keyguard.domain.interactor.AlternateBouncerInteracto import com.android.systemui.plugins.FalsingManager; import com.android.systemui.plugins.log.LogLevel; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.phone.KeyguardBypassController; import com.android.systemui.statusbar.phone.KeyguardIndicationTextView; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; Loading Loading @@ -146,6 +146,7 @@ public class KeyguardIndicationController { private final KeyguardUpdateMonitor mKeyguardUpdateMonitor; private final AuthController mAuthController; private final KeyguardLogger mKeyguardLogger; private final UserTracker mUserTracker; private ViewGroup mIndicationArea; private KeyguardIndicationTextView mTopIndicationView; private KeyguardIndicationTextView mLockScreenIndicationView; Loading Loading @@ -251,7 +252,8 @@ public class KeyguardIndicationController { FaceHelpMessageDeferral faceHelpMessageDeferral, KeyguardLogger keyguardLogger, AlternateBouncerInteractor alternateBouncerInteractor, AlarmManager alarmManager AlarmManager alarmManager, UserTracker userTracker ) { mContext = context; mBroadcastDispatcher = broadcastDispatcher; Loading @@ -275,6 +277,7 @@ public class KeyguardIndicationController { mKeyguardLogger = keyguardLogger; mScreenLifecycle.addObserver(mScreenObserver); mAlternateBouncerInteractor = alternateBouncerInteractor; mUserTracker = userTracker; mFaceAcquiredMessageDeferral = faceHelpMessageDeferral; mCoExFaceAcquisitionMsgIdsToShow = new HashSet<>(); Loading Loading @@ -475,6 +478,10 @@ public class KeyguardIndicationController { } } private int getCurrentUser() { return mUserTracker.getUserId(); } private void updateLockScreenOwnerInfo() { // Check device owner info on a bg thread. // It makes multiple IPCs that could block the thread it's run on. Loading Loading @@ -1166,8 +1173,7 @@ public class KeyguardIndicationController { mContext.getString(R.string.keyguard_unlock) ); } else if (fpAuthFailed && mKeyguardUpdateMonitor.getUserHasTrust( KeyguardUpdateMonitor.getCurrentUser())) { && mKeyguardUpdateMonitor.getUserHasTrust(getCurrentUser())) { showBiometricMessage( getTrustGrantedIndication(), mContext.getString(R.string.keyguard_unlock) Loading Loading @@ -1421,7 +1427,7 @@ public class KeyguardIndicationController { private boolean canUnlockWithFingerprint() { return mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( KeyguardUpdateMonitor.getCurrentUser()); getCurrentUser()); } private void showErrorMessageNowOrLater(String errString, @Nullable String followUpMsg) { Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/KeyguardIndicationControllerTest.java +27 −17 Original line number Diff line number Diff line Loading @@ -105,6 +105,7 @@ import com.android.systemui.keyguard.ScreenLifecycle; import com.android.systemui.keyguard.domain.interactor.AlternateBouncerInteractor; import com.android.systemui.plugins.FalsingManager; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.phone.KeyguardBypassController; import com.android.systemui.statusbar.phone.KeyguardIndicationTextView; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; Loading Loading @@ -188,6 +189,8 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { private AuthController mAuthController; @Mock private AlarmManager mAlarmManager; @Mock private UserTracker mUserTracker; @Captor private ArgumentCaptor<DockManager.AlignmentStateListener> mAlignmentListener; @Captor Loading @@ -209,6 +212,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { private BroadcastReceiver mBroadcastReceiver; private FakeExecutor mExecutor = new FakeExecutor(new FakeSystemClock()); private TestableLooper mTestableLooper; private final int mCurrentUserId = 1; private KeyguardIndicationTextView mTextView; // AOD text Loading Loading @@ -260,6 +264,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { .thenReturn(mDisclosureGeneric); when(mDevicePolicyResourcesManager.getString(anyString(), any(), anyString())) .thenReturn(mDisclosureWithOrganization); when(mUserTracker.getUserId()).thenReturn(mCurrentUserId); mWakeLock = new WakeLockFake(); mWakeLockBuilder = new WakeLockFake.Builder(mContext); Loading Loading @@ -291,7 +296,8 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { mKeyguardBypassController, mAccessibilityManager, mFaceHelpMessageDeferral, mock(KeyguardLogger.class), mAlternateBouncerInteractor, mAlarmManager mAlarmManager, mUserTracker ); mController.init(); mController.setIndicationArea(mIndicationArea); Loading Loading @@ -813,7 +819,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void faceErrorTimeout_whenFingerprintEnrolled_doesNotShowMessage() { createController(); when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); String message = "A message"; mController.setVisible(true); Loading @@ -828,7 +834,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); // WHEN help messages received that are allowed to show final String helpString = "helpString"; Loading @@ -855,7 +861,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); // WHEN help messages received that aren't supposed to show final String helpString = "helpString"; Loading @@ -882,7 +888,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint NOT enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(false); getCurrentUser())).thenReturn(false); // WHEN help messages received final Set<CharSequence> helpStrings = new HashSet<>(); Loading Loading @@ -913,7 +919,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint NOT enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(false); getCurrentUser())).thenReturn(false); // WHEN help message received and deferred message is valid final String helpString = "helpMsg"; Loading Loading @@ -944,7 +950,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); // WHEN help message received and deferredMessage is valid final String helpString = "helpMsg"; Loading Loading @@ -1173,7 +1179,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // WHEN trust is granted when(mKeyguardUpdateMonitor.getUserHasTrust(anyInt())).thenReturn(true); mKeyguardUpdateMonitorCallback.onTrustChanged(KeyguardUpdateMonitor.getCurrentUser()); mKeyguardUpdateMonitorCallback.onTrustChanged(getCurrentUser()); // THEN verify the trust granted message shows verifyIndicationMessage( Loading Loading @@ -1238,7 +1244,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void coEx_faceSuccess_showsPressToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, no a11y enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(false); Loading @@ -1262,7 +1268,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void coEx_faceSuccess_touchExplorationEnabled_showsFaceUnlockedSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, a11y enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(true); Loading @@ -1286,7 +1292,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void coEx_faceSuccess_a11yEnabled_showsFaceUnlockedSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, a11y is enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(true); Loading @@ -1309,7 +1315,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void faceOnly_faceSuccess_showsFaceUnlockedSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, no udfps supported when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(false); createController(); Loading @@ -1331,7 +1337,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void udfpsOnly_a11yEnabled_showsSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, a11y is enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(true); Loading @@ -1351,7 +1357,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void udfpsOnly_showsPressToOpen() { // GIVEN bouncer isn't showing, udfps is supported, a11y is NOT enabled, can skip bouncer when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(false); Loading @@ -1372,7 +1378,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN bouncer isn't showing, can skip bouncer, no security (udfps isn't supported, // face wasn't authenticated) when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(false); createController(); Loading @@ -1390,7 +1396,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void cannotSkipBouncer_showSwipeToUnlockHint() { // GIVEN bouncer isn't showing and cannot skip bouncer when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(false); createController(); mController.setVisible(true); Loading Loading @@ -1746,10 +1752,14 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { private void setupFingerprintUnlockPossible(boolean possible) { when(mKeyguardUpdateMonitor .getCachedIsUnlockWithFingerprintPossible(KeyguardUpdateMonitor.getCurrentUser())) .getCachedIsUnlockWithFingerprintPossible(getCurrentUser())) .thenReturn(possible); } private int getCurrentUser() { return mCurrentUserId; } private void onFaceLockoutError(String errMsg) { mKeyguardUpdateMonitorCallback.onBiometricError(FACE_ERROR_LOCKOUT_PERMANENT, errMsg, Loading Loading
packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java +5 −0 Original line number Diff line number Diff line Loading @@ -480,6 +480,11 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab sCurrentUser = currentUser; } /** * @deprecated This can potentially return unexpected values in a multi user scenario * as this state is managed by another component. Consider using {@link UserTracker}. */ @Deprecated public synchronized static int getCurrentUser() { return sCurrentUser; } Loading
packages/SystemUI/src/com/android/systemui/statusbar/KeyguardIndicationController.java +11 −5 Original line number Diff line number Diff line Loading @@ -28,7 +28,6 @@ import static android.view.View.VISIBLE; import static com.android.keyguard.KeyguardUpdateMonitor.BIOMETRIC_HELP_FACE_NOT_AVAILABLE; import static com.android.keyguard.KeyguardUpdateMonitor.BIOMETRIC_HELP_FACE_NOT_RECOGNIZED; import static com.android.keyguard.KeyguardUpdateMonitor.BIOMETRIC_HELP_FINGERPRINT_NOT_RECOGNIZED; import static com.android.keyguard.KeyguardUpdateMonitor.getCurrentUser; import static com.android.systemui.DejankUtils.whitelistIpcs; import static com.android.systemui.keyguard.KeyguardIndicationRotateTextViewController.IMPORTANT_MSG_MIN_DURATION; import static com.android.systemui.keyguard.KeyguardIndicationRotateTextViewController.INDICATION_TYPE_ALIGNMENT; Loading Loading @@ -99,6 +98,7 @@ import com.android.systemui.keyguard.domain.interactor.AlternateBouncerInteracto import com.android.systemui.plugins.FalsingManager; import com.android.systemui.plugins.log.LogLevel; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.phone.KeyguardBypassController; import com.android.systemui.statusbar.phone.KeyguardIndicationTextView; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; Loading Loading @@ -146,6 +146,7 @@ public class KeyguardIndicationController { private final KeyguardUpdateMonitor mKeyguardUpdateMonitor; private final AuthController mAuthController; private final KeyguardLogger mKeyguardLogger; private final UserTracker mUserTracker; private ViewGroup mIndicationArea; private KeyguardIndicationTextView mTopIndicationView; private KeyguardIndicationTextView mLockScreenIndicationView; Loading Loading @@ -251,7 +252,8 @@ public class KeyguardIndicationController { FaceHelpMessageDeferral faceHelpMessageDeferral, KeyguardLogger keyguardLogger, AlternateBouncerInteractor alternateBouncerInteractor, AlarmManager alarmManager AlarmManager alarmManager, UserTracker userTracker ) { mContext = context; mBroadcastDispatcher = broadcastDispatcher; Loading @@ -275,6 +277,7 @@ public class KeyguardIndicationController { mKeyguardLogger = keyguardLogger; mScreenLifecycle.addObserver(mScreenObserver); mAlternateBouncerInteractor = alternateBouncerInteractor; mUserTracker = userTracker; mFaceAcquiredMessageDeferral = faceHelpMessageDeferral; mCoExFaceAcquisitionMsgIdsToShow = new HashSet<>(); Loading Loading @@ -475,6 +478,10 @@ public class KeyguardIndicationController { } } private int getCurrentUser() { return mUserTracker.getUserId(); } private void updateLockScreenOwnerInfo() { // Check device owner info on a bg thread. // It makes multiple IPCs that could block the thread it's run on. Loading Loading @@ -1166,8 +1173,7 @@ public class KeyguardIndicationController { mContext.getString(R.string.keyguard_unlock) ); } else if (fpAuthFailed && mKeyguardUpdateMonitor.getUserHasTrust( KeyguardUpdateMonitor.getCurrentUser())) { && mKeyguardUpdateMonitor.getUserHasTrust(getCurrentUser())) { showBiometricMessage( getTrustGrantedIndication(), mContext.getString(R.string.keyguard_unlock) Loading Loading @@ -1421,7 +1427,7 @@ public class KeyguardIndicationController { private boolean canUnlockWithFingerprint() { return mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( KeyguardUpdateMonitor.getCurrentUser()); getCurrentUser()); } private void showErrorMessageNowOrLater(String errString, @Nullable String followUpMsg) { Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/KeyguardIndicationControllerTest.java +27 −17 Original line number Diff line number Diff line Loading @@ -105,6 +105,7 @@ import com.android.systemui.keyguard.ScreenLifecycle; import com.android.systemui.keyguard.domain.interactor.AlternateBouncerInteractor; import com.android.systemui.plugins.FalsingManager; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.settings.UserTracker; import com.android.systemui.statusbar.phone.KeyguardBypassController; import com.android.systemui.statusbar.phone.KeyguardIndicationTextView; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; Loading Loading @@ -188,6 +189,8 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { private AuthController mAuthController; @Mock private AlarmManager mAlarmManager; @Mock private UserTracker mUserTracker; @Captor private ArgumentCaptor<DockManager.AlignmentStateListener> mAlignmentListener; @Captor Loading @@ -209,6 +212,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { private BroadcastReceiver mBroadcastReceiver; private FakeExecutor mExecutor = new FakeExecutor(new FakeSystemClock()); private TestableLooper mTestableLooper; private final int mCurrentUserId = 1; private KeyguardIndicationTextView mTextView; // AOD text Loading Loading @@ -260,6 +264,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { .thenReturn(mDisclosureGeneric); when(mDevicePolicyResourcesManager.getString(anyString(), any(), anyString())) .thenReturn(mDisclosureWithOrganization); when(mUserTracker.getUserId()).thenReturn(mCurrentUserId); mWakeLock = new WakeLockFake(); mWakeLockBuilder = new WakeLockFake.Builder(mContext); Loading Loading @@ -291,7 +296,8 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { mKeyguardBypassController, mAccessibilityManager, mFaceHelpMessageDeferral, mock(KeyguardLogger.class), mAlternateBouncerInteractor, mAlarmManager mAlarmManager, mUserTracker ); mController.init(); mController.setIndicationArea(mIndicationArea); Loading Loading @@ -813,7 +819,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void faceErrorTimeout_whenFingerprintEnrolled_doesNotShowMessage() { createController(); when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); String message = "A message"; mController.setVisible(true); Loading @@ -828,7 +834,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); // WHEN help messages received that are allowed to show final String helpString = "helpString"; Loading @@ -855,7 +861,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); // WHEN help messages received that aren't supposed to show final String helpString = "helpString"; Loading @@ -882,7 +888,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint NOT enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(false); getCurrentUser())).thenReturn(false); // WHEN help messages received final Set<CharSequence> helpStrings = new HashSet<>(); Loading Loading @@ -913,7 +919,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint NOT enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(false); getCurrentUser())).thenReturn(false); // WHEN help message received and deferred message is valid final String helpString = "helpMsg"; Loading Loading @@ -944,7 +950,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN fingerprint enrolled when(mKeyguardUpdateMonitor.getCachedIsUnlockWithFingerprintPossible( 0)).thenReturn(true); getCurrentUser())).thenReturn(true); // WHEN help message received and deferredMessage is valid final String helpString = "helpMsg"; Loading Loading @@ -1173,7 +1179,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // WHEN trust is granted when(mKeyguardUpdateMonitor.getUserHasTrust(anyInt())).thenReturn(true); mKeyguardUpdateMonitorCallback.onTrustChanged(KeyguardUpdateMonitor.getCurrentUser()); mKeyguardUpdateMonitorCallback.onTrustChanged(getCurrentUser()); // THEN verify the trust granted message shows verifyIndicationMessage( Loading Loading @@ -1238,7 +1244,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void coEx_faceSuccess_showsPressToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, no a11y enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(false); Loading @@ -1262,7 +1268,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void coEx_faceSuccess_touchExplorationEnabled_showsFaceUnlockedSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, a11y enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(true); Loading @@ -1286,7 +1292,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void coEx_faceSuccess_a11yEnabled_showsFaceUnlockedSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, a11y is enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(true); Loading @@ -1309,7 +1315,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void faceOnly_faceSuccess_showsFaceUnlockedSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, no udfps supported when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(false); createController(); Loading @@ -1331,7 +1337,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void udfpsOnly_a11yEnabled_showsSwipeToOpen() { // GIVEN bouncer isn't showing, can skip bouncer, udfps is supported, a11y is enabled when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(true); Loading @@ -1351,7 +1357,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void udfpsOnly_showsPressToOpen() { // GIVEN bouncer isn't showing, udfps is supported, a11y is NOT enabled, can skip bouncer when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(true); when(mAccessibilityManager.isEnabled()).thenReturn(false); Loading @@ -1372,7 +1378,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { // GIVEN bouncer isn't showing, can skip bouncer, no security (udfps isn't supported, // face wasn't authenticated) when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(true); when(mKeyguardUpdateMonitor.isUdfpsSupported()).thenReturn(false); createController(); Loading @@ -1390,7 +1396,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { public void cannotSkipBouncer_showSwipeToUnlockHint() { // GIVEN bouncer isn't showing and cannot skip bouncer when(mStatusBarKeyguardViewManager.isBouncerShowing()).thenReturn(false); when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(KeyguardUpdateMonitor.getCurrentUser())) when(mKeyguardUpdateMonitor.getUserCanSkipBouncer(getCurrentUser())) .thenReturn(false); createController(); mController.setVisible(true); Loading Loading @@ -1746,10 +1752,14 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase { private void setupFingerprintUnlockPossible(boolean possible) { when(mKeyguardUpdateMonitor .getCachedIsUnlockWithFingerprintPossible(KeyguardUpdateMonitor.getCurrentUser())) .getCachedIsUnlockWithFingerprintPossible(getCurrentUser())) .thenReturn(possible); } private int getCurrentUser() { return mCurrentUserId; } private void onFaceLockoutError(String errMsg) { mKeyguardUpdateMonitorCallback.onBiometricError(FACE_ERROR_LOCKOUT_PERMANENT, errMsg, Loading