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

Commit 612b2adf authored by Kevin Chyn's avatar Kevin Chyn Committed by Android (Google) Code Review
Browse files

Merge "Use mock IBiometricsFingerprint for Fingerprint21Test" into sc-dev

parents 3850b098 639957c7
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -47,6 +47,7 @@ import android.util.Slog;
import android.util.proto.ProtoOutputStream;

import com.android.internal.R;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.util.FrameworkStatsLog;
import com.android.server.biometrics.SensorServiceStateProto;
import com.android.server.biometrics.SensorStateProto;
@@ -397,7 +398,8 @@ public class Fingerprint21 implements IHwBinder.DeathRecipient, ServiceProvider
        });
    }

    private synchronized IBiometricsFingerprint getDaemon() {
    @VisibleForTesting
    synchronized IBiometricsFingerprint getDaemon() {
        if (mTestHalEnabled) {
            final TestHal testHal = new TestHal();
            testHal.setNotify(mHalResultController);
+21 −1
Original line number Diff line number Diff line
@@ -19,17 +19,20 @@ package com.android.server.biometrics.sensors.fingerprint.hidl;
import static junit.framework.Assert.assertEquals;

import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.content.Context;
import android.content.res.Resources;
import android.hardware.biometrics.BiometricManager;
import android.hardware.biometrics.fingerprint.V2_1.IBiometricsFingerprint;
import android.os.Handler;
import android.os.Looper;
import android.os.UserManager;
import android.platform.test.annotations.Presubmit;

import androidx.annotation.NonNull;
import androidx.test.InstrumentationRegistry;
import androidx.test.filters.SmallTest;

@@ -80,7 +83,7 @@ public class Fingerprint21Test {
                .thenReturn(5);

        mLockoutResetDispatcher = new LockoutResetDispatcher(mContext);
        mFingerprint21 = new Fingerprint21(mContext, mScheduler,
        mFingerprint21 = new TestableFingerprint21(mContext, mScheduler,
                new Handler(Looper.getMainLooper()), SENSOR_ID,
                BiometricManager.Authenticators.BIOMETRIC_WEAK, mLockoutResetDispatcher,
                mHalResultController);
@@ -100,4 +103,21 @@ public class Fingerprint21Test {
        waitForIdle();
        verify(mScheduler).reset();
    }

    private static class TestableFingerprint21 extends Fingerprint21 {

        TestableFingerprint21(@NonNull Context context,
                @NonNull BiometricScheduler scheduler,
                @NonNull Handler handler, int sensorId, int strength,
                @NonNull LockoutResetDispatcher lockoutResetDispatcher,
                @NonNull HalResultController controller) {
            super(context, scheduler, handler, sensorId, strength, lockoutResetDispatcher,
                    controller);
        }

        @Override
        synchronized IBiometricsFingerprint getDaemon() {
            return mock(IBiometricsFingerprint.class);
        }
    }
}