Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 767172f5 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Finish client when cancelled" into main

parents 1ebe3bff bbbc5aed
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -227,6 +227,9 @@ public class FaceAuthenticationClient
                onError(BiometricFaceConstants.FACE_ERROR_HW_UNAVAILABLE, 0 /* vendorCode */);
                mCallback.onClientFinished(this, false /* success */);
            }
        } else {
            Slog.e(TAG, "Cancellation signal is null");
            mCallback.onClientFinished(this, false /* success */);
        }
    }

+2 −1
Original line number Diff line number Diff line
@@ -359,7 +359,8 @@ public class FingerprintAuthenticationClient
                mCallback.onClientFinished(this, false /* success */);
            }
        } else {
            Slog.e(TAG, "cancellation signal was null");
            Slog.e(TAG, "Cancellation signal was null");
            mCallback.onClientFinished(this, false /* success */);
        }
    }

+9 −0
Original line number Diff line number Diff line
@@ -479,6 +479,15 @@ public class FaceAuthenticationClientTest {
                eq(mContext.getOpPackageName()), anyInt(), anyInt(), any());
    }

    @Test
    public void testCancelAuth_whenClientWaitingForCookie() throws RemoteException {
        final FaceAuthenticationClient client = createClient(true);
        client.waitForCookie(mCallback);
        client.cancel();

        verify(mCallback).onClientFinished(client, false);
    }

    private FaceAuthenticationClient createClient() throws RemoteException {
        return createClient(2 /* version */, mClientMonitorCallbackConverter,
                false /* allowBackgroundAuthentication */, true /* isBiometricPrompt */,
+13 −1
Original line number Diff line number Diff line
@@ -117,7 +117,6 @@ public class FingerprintAuthenticationClientTest {
    private static final int TOUCH_Y = 20;
    private static final float TOUCH_MAJOR = 4.4f;
    private static final float TOUCH_MINOR = 5.5f;
    private static final int FINGER_UP = 111;

    @Rule
    public final TestableContext mContext = new TestableContext(
@@ -383,6 +382,8 @@ public class FingerprintAuthenticationClientTest {

    @Test
    public void subscribeContextAndStartHal() throws RemoteException {
        when(mHal.authenticateWithContext(anyLong(), any())).thenReturn(mCancellationSignal);

        final FingerprintAuthenticationClient client = createClient();
        client.start(mCallback);

@@ -691,6 +692,17 @@ public class FingerprintAuthenticationClientTest {
        verify(mLockoutTracker).addFailedAttemptForUser(USER_ID);
    }

    @Test
    public void testCancelAuth_whenClientWaitingForCookie() throws RemoteException {
        final FingerprintAuthenticationClient client = createClientWithoutBackgroundAuth();
        client.waitForCookie(mCallback);
        client.cancel();
        mLooper.moveTimeForward(10);
        mLooper.dispatchAll();

        verify(mCallback).onClientFinished(client, false);
    }

    private FingerprintAuthenticationClient createClient() throws RemoteException {
        return createClient(100 /* version */, true /* allowBackgroundAuthentication */,
                true /* isBiometricPrompt */,