Merge "Use shared lib for settings v2." into main

This commit is contained in:
Hao Dong
2023-09-30 17:25:52 +00:00
committed by Android (Google) Code Review
13 changed files with 58 additions and 117 deletions

View File

@@ -4,6 +4,7 @@ android_library {
"src/**/*.kt"
],
libs: [
"BiometricsSharedLib",
"FingerprintManagerInteractor",
],
}

View File

@@ -17,13 +17,13 @@
package com.android.settings.testutils2
import com.android.settings.biometrics.fingerprint2.shared.domain.interactor.FingerprintManagerInteractor
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintAuthAttemptViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintSensorPropertyViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.EnrollReason
import com.android.settings.biometrics.fingerprint2.shared.model.FingerEnrollStateViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.SensorStrength
import com.android.settings.biometrics.fingerprint2.shared.model.SensorType
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintAuthAttemptViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintViewModel
import com.android.systemui.biometrics.shared.model.FingerprintSensor
import com.android.systemui.biometrics.shared.model.FingerprintSensorType
import com.android.systemui.biometrics.shared.model.SensorStrength
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
import kotlinx.coroutines.flow.flowOf
@@ -39,7 +39,12 @@ class FakeFingerprintManagerInteractor : FingerprintManagerInteractor {
var pressToAuthEnabled = true
var sensorProp =
FingerprintSensorPropertyViewModel(0 /* sensorId */, SensorStrength.Strong, 5, SensorType.SFPS)
FingerprintSensor(
0 /* sensorId */,
SensorStrength.STRONG,
5,
FingerprintSensorType.POWER_BUTTON
)
override suspend fun authenticate(): FingerprintAuthAttemptViewModel {
return authenticateAttempt
@@ -57,7 +62,7 @@ class FakeFingerprintManagerInteractor : FingerprintManagerInteractor {
emit(enrolledFingerprintsInternal.size < enrollableFingerprints)
}
override val sensorPropertiesInternal: Flow<FingerprintSensorPropertyViewModel?> = flow {
override val sensorPropertiesInternal: Flow<FingerprintSensor?> = flow {
emit(sensorProp)
}
@@ -79,7 +84,7 @@ class FakeFingerprintManagerInteractor : FingerprintManagerInteractor {
}
override suspend fun hasSideFps(): Boolean {
return sensorProp.sensorType == SensorType.SFPS
return sensorProp.sensorType == FingerprintSensorType.POWER_BUTTON
}
override suspend fun pressToAuthEnabled(): Boolean {

View File

@@ -18,14 +18,14 @@ package com.android.settings.fingerprint2.ui.settings
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintAuthAttemptViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintSensorPropertyViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.FingerprintViewModel
import com.android.settings.biometrics.fingerprint2.shared.model.SensorStrength
import com.android.settings.biometrics.fingerprint2.shared.model.SensorType
import com.android.settings.biometrics.fingerprint2.ui.settings.viewmodel.FingerprintSettingsNavigationViewModel
import com.android.settings.biometrics.fingerprint2.ui.settings.viewmodel.FingerprintSettingsViewModel
import com.android.settings.biometrics.fingerprint2.ui.settings.viewmodel.PreferenceViewModel
import com.android.settings.testutils2.FakeFingerprintManagerInteractor
import com.android.systemui.biometrics.shared.model.FingerprintSensor
import com.android.systemui.biometrics.shared.model.FingerprintSensorType
import com.android.systemui.biometrics.shared.model.SensorStrength
import com.google.common.truth.Truth.assertThat
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.flow.collectLatest
@@ -96,11 +96,11 @@ class FingerprintSettingsViewModelTest {
fun authenticate_DoesNotRun_ifOptical() =
testScope.runTest {
fakeFingerprintManagerInteractor.sensorProp =
FingerprintSensorPropertyViewModel(
FingerprintSensor(
0 /* sensorId */,
SensorStrength.Strong,
SensorStrength.STRONG,
5 /* maxEnrollmentsPerUser */,
SensorType.Optical,
FingerprintSensorType.UDFPS_OPTICAL,
)
fakeFingerprintManagerInteractor.enrolledFingerprintsInternal =
mutableListOf(FingerprintViewModel("a", 1, 3L))
@@ -132,11 +132,11 @@ class FingerprintSettingsViewModelTest {
fun authenticate_DoesNotRun_ifUltrasonic() =
testScope.runTest {
fakeFingerprintManagerInteractor.sensorProp =
FingerprintSensorPropertyViewModel(
FingerprintSensor(
0 /* sensorId */,
SensorStrength.Strong,
SensorStrength.STRONG,
5 /* maxEnrollmentsPerUser */,
SensorType.Ultrasonic,
FingerprintSensorType.UDFPS_ULTRASONIC,
)
fakeFingerprintManagerInteractor.enrolledFingerprintsInternal =
mutableListOf(FingerprintViewModel("a", 1, 3L))
@@ -166,11 +166,11 @@ class FingerprintSettingsViewModelTest {
fun authenticate_DoesRun_ifNotUdfps() =
testScope.runTest {
fakeFingerprintManagerInteractor.sensorProp =
FingerprintSensorPropertyViewModel(
FingerprintSensor(
0 /* sensorId */,
SensorStrength.Strong,
SensorStrength.STRONG,
5 /* maxEnrollmentsPerUser */,
SensorType.SFPS
FingerprintSensorType.POWER_BUTTON
)
fakeFingerprintManagerInteractor.enrolledFingerprintsInternal =
mutableListOf(FingerprintViewModel("a", 1, 3L))
@@ -372,11 +372,11 @@ class FingerprintSettingsViewModelTest {
private fun setupAuth(): MutableList<FingerprintViewModel> {
fakeFingerprintManagerInteractor.sensorProp =
FingerprintSensorPropertyViewModel(
FingerprintSensor(
0 /* sensorId */,
SensorStrength.Strong,
SensorStrength.STRONG,
5 /* maxEnrollmentsPerUser */,
SensorType.SFPS
FingerprintSensorType.POWER_BUTTON
)
val fingerprints =
mutableListOf(FingerprintViewModel("a", 1, 3L), FingerprintViewModel("b", 2, 5L))