Merge "Add extra logs for alternateBouncer" into tm-qpr-dev

This commit is contained in:
TreeHugger Robot
2023-02-06 21:29:31 +00:00
committed by Android (Google) Code Review
5 changed files with 42 additions and 7 deletions

View File

@@ -23,6 +23,7 @@ import android.content.IntentFilter
import android.os.Looper
import android.os.UserHandle
import com.android.internal.widget.LockPatternUtils
import com.android.systemui.Dumpable
import com.android.systemui.biometrics.AuthController
import com.android.systemui.broadcast.BroadcastDispatcher
import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging
@@ -31,7 +32,9 @@ import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.dagger.qualifiers.Background
import com.android.systemui.dagger.qualifiers.Main
import com.android.systemui.dump.DumpManager
import com.android.systemui.user.data.repository.UserRepository
import java.io.PrintWriter
import javax.inject.Inject
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.CoroutineScope
@@ -81,7 +84,18 @@ constructor(
@Application scope: CoroutineScope,
@Background backgroundDispatcher: CoroutineDispatcher,
@Main looper: Looper,
) : BiometricSettingsRepository {
dumpManager: DumpManager,
) : BiometricSettingsRepository, Dumpable {
init {
dumpManager.registerDumpable(this)
}
override fun dump(pw: PrintWriter, args: Array<String?>) {
pw.println("isFingerprintEnrolled=${isFingerprintEnrolled.value}")
pw.println("isStrongBiometricAllowed=${isStrongBiometricAllowed.value}")
pw.println("isFingerprintEnabledByDevicePolicy=${isFingerprintEnabledByDevicePolicy.value}")
}
/** UserId of the current selected user. */
private val selectedUserId: Flow<Int> =

View File

@@ -19,10 +19,13 @@ package com.android.systemui.keyguard.data.repository
import android.hardware.biometrics.BiometricSourceType
import com.android.keyguard.KeyguardUpdateMonitor
import com.android.keyguard.KeyguardUpdateMonitorCallback
import com.android.systemui.Dumpable
import com.android.systemui.common.coroutine.ChannelExt.trySendWithFailureLogging
import com.android.systemui.common.coroutine.ConflatedCallbackFlow.conflatedCallbackFlow
import com.android.systemui.dagger.SysUISingleton
import com.android.systemui.dagger.qualifiers.Application
import com.android.systemui.dump.DumpManager
import java.io.PrintWriter
import javax.inject.Inject
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.channels.awaitClose
@@ -49,7 +52,16 @@ class DeviceEntryFingerprintAuthRepositoryImpl
constructor(
val keyguardUpdateMonitor: KeyguardUpdateMonitor,
@Application scope: CoroutineScope,
) : DeviceEntryFingerprintAuthRepository {
dumpManager: DumpManager,
) : DeviceEntryFingerprintAuthRepository, Dumpable {
init {
dumpManager.registerDumpable(this)
}
override fun dump(pw: PrintWriter, args: Array<String?>) {
pw.println("isLockedOut=${isLockedOut.value}")
}
override val isLockedOut: StateFlow<Boolean> =
conflatedCallbackFlow {

View File

@@ -158,18 +158,18 @@ constructor(
override val bouncerErrorMessage: CharSequence?
get() = viewMediatorCallback.consumeCustomMessage()
init {
setUpLogging()
}
/** Values associated with the AlternateBouncer */
private val _isAlternateBouncerVisible = MutableStateFlow(false)
override val isAlternateBouncerVisible = _isAlternateBouncerVisible.asStateFlow()
override var lastAlternateBouncerVisibleTime: Long = NOT_VISIBLE
private val _isAlternateBouncerUIAvailable = MutableStateFlow<Boolean>(false)
private val _isAlternateBouncerUIAvailable = MutableStateFlow(false)
override val isAlternateBouncerUIAvailable: StateFlow<Boolean> =
_isAlternateBouncerUIAvailable.asStateFlow()
init {
setUpLogging()
}
override fun setPrimaryScrimmed(isScrimmed: Boolean) {
_primaryBouncerScrimmed.value = isScrimmed
}
@@ -290,6 +290,9 @@ constructor(
resourceUpdateRequests
.logDiffsForTable(buffer, "", "ResourceUpdateRequests", false)
.launchIn(applicationScope)
isAlternateBouncerUIAvailable
.logDiffsForTable(buffer, "", "IsAlternateBouncerUIAvailable", false)
.launchIn(applicationScope)
}
companion object {

View File

@@ -29,6 +29,7 @@ import com.android.internal.widget.LockPatternUtils.StrongAuthTracker.STRONG_AUT
import com.android.systemui.SysuiTestCase
import com.android.systemui.biometrics.AuthController
import com.android.systemui.coroutines.collectLastValue
import com.android.systemui.dump.DumpManager
import com.android.systemui.user.data.repository.FakeUserRepository
import com.android.systemui.util.mockito.argumentCaptor
import com.android.systemui.util.mockito.whenever
@@ -56,6 +57,7 @@ class BiometricSettingsRepositoryTest : SysuiTestCase() {
@Mock private lateinit var authController: AuthController
@Mock private lateinit var lockPatternUtils: LockPatternUtils
@Mock private lateinit var devicePolicyManager: DevicePolicyManager
@Mock private lateinit var dumpManager: DumpManager
private lateinit var userRepository: FakeUserRepository
private lateinit var testDispatcher: TestDispatcher
@@ -85,6 +87,7 @@ class BiometricSettingsRepositoryTest : SysuiTestCase() {
scope = testScope.backgroundScope,
backgroundDispatcher = testDispatcher,
looper = testableLooper!!.looper,
dumpManager = dumpManager,
)
}

View File

@@ -22,6 +22,7 @@ import com.android.keyguard.KeyguardUpdateMonitor
import com.android.keyguard.KeyguardUpdateMonitorCallback
import com.android.systemui.SysuiTestCase
import com.android.systemui.coroutines.collectLastValue
import com.android.systemui.dump.DumpManager
import com.android.systemui.util.mockito.whenever
import com.google.common.truth.Truth.assertThat
import kotlinx.coroutines.ExperimentalCoroutinesApi
@@ -44,6 +45,7 @@ import org.mockito.MockitoAnnotations
@RunWith(JUnit4::class)
class DeviceEntryFingerprintAuthRepositoryTest : SysuiTestCase() {
@Mock private lateinit var keyguardUpdateMonitor: KeyguardUpdateMonitor
@Mock private lateinit var dumpManager: DumpManager
@Captor private lateinit var callbackCaptor: ArgumentCaptor<KeyguardUpdateMonitorCallback>
private lateinit var testScope: TestScope
@@ -59,6 +61,7 @@ class DeviceEntryFingerprintAuthRepositoryTest : SysuiTestCase() {
DeviceEntryFingerprintAuthRepositoryImpl(
keyguardUpdateMonitor,
testScope.backgroundScope,
dumpManager,
)
}