Merge "Use mock IBiometricsFingerprint for Fingerprint21Test" into sc-dev am: 612b2adf18

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/13413054

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ibf9f714d8cc99fe6272ded4fd2e7e7666806e945
This commit is contained in:
Kevin Chyn
2021-01-27 09:36:42 +00:00
committed by Automerger Merge Worker
2 changed files with 24 additions and 2 deletions

View File

@@ -47,6 +47,7 @@ import android.util.Slog;
import android.util.proto.ProtoOutputStream; import android.util.proto.ProtoOutputStream;
import com.android.internal.R; import com.android.internal.R;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.util.FrameworkStatsLog; import com.android.internal.util.FrameworkStatsLog;
import com.android.server.biometrics.SensorServiceStateProto; import com.android.server.biometrics.SensorServiceStateProto;
import com.android.server.biometrics.SensorStateProto; 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) { if (mTestHalEnabled) {
final TestHal testHal = new TestHal(); final TestHal testHal = new TestHal();
testHal.setNotify(mHalResultController); testHal.setNotify(mHalResultController);

View File

@@ -19,17 +19,20 @@ package com.android.server.biometrics.sensors.fingerprint.hidl;
import static junit.framework.Assert.assertEquals; import static junit.framework.Assert.assertEquals;
import static org.mockito.ArgumentMatchers.eq; import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
import android.content.Context; import android.content.Context;
import android.content.res.Resources; import android.content.res.Resources;
import android.hardware.biometrics.BiometricManager; import android.hardware.biometrics.BiometricManager;
import android.hardware.biometrics.fingerprint.V2_1.IBiometricsFingerprint;
import android.os.Handler; import android.os.Handler;
import android.os.Looper; import android.os.Looper;
import android.os.UserManager; import android.os.UserManager;
import android.platform.test.annotations.Presubmit; import android.platform.test.annotations.Presubmit;
import androidx.annotation.NonNull;
import androidx.test.InstrumentationRegistry; import androidx.test.InstrumentationRegistry;
import androidx.test.filters.SmallTest; import androidx.test.filters.SmallTest;
@@ -80,7 +83,7 @@ public class Fingerprint21Test {
.thenReturn(5); .thenReturn(5);
mLockoutResetDispatcher = new LockoutResetDispatcher(mContext); mLockoutResetDispatcher = new LockoutResetDispatcher(mContext);
mFingerprint21 = new Fingerprint21(mContext, mScheduler, mFingerprint21 = new TestableFingerprint21(mContext, mScheduler,
new Handler(Looper.getMainLooper()), SENSOR_ID, new Handler(Looper.getMainLooper()), SENSOR_ID,
BiometricManager.Authenticators.BIOMETRIC_WEAK, mLockoutResetDispatcher, BiometricManager.Authenticators.BIOMETRIC_WEAK, mLockoutResetDispatcher,
mHalResultController); mHalResultController);
@@ -100,4 +103,21 @@ public class Fingerprint21Test {
waitForIdle(); waitForIdle();
verify(mScheduler).reset(); 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);
}
}
} }