Merge "QuickAccessWalletQuickAffordance Config shouldn't check older setting." into udc-dev

This commit is contained in:
Ale Nijamkin
2023-06-02 19:46:25 +00:00
committed by Android (Google) Code Review
2 changed files with 12 additions and 8 deletions

View File

@@ -63,7 +63,7 @@ constructor(
val hasCards = response?.walletCards?.isNotEmpty() == true val hasCards = response?.walletCards?.isNotEmpty() == true
trySendWithFailureLogging( trySendWithFailureLogging(
state( state(
isFeatureEnabled = walletController.isWalletEnabled, isFeatureEnabled = isWalletAvailable(),
hasCard = hasCards, hasCard = hasCards,
tileIcon = walletController.walletClient.tileIcon, tileIcon = walletController.walletClient.tileIcon,
), ),
@@ -100,7 +100,7 @@ constructor(
return when { return when {
!walletController.walletClient.isWalletServiceAvailable -> !walletController.walletClient.isWalletServiceAvailable ->
KeyguardQuickAffordanceConfig.PickerScreenState.UnavailableOnDevice KeyguardQuickAffordanceConfig.PickerScreenState.UnavailableOnDevice
!walletController.isWalletEnabled || queryCards().isEmpty() -> { !isWalletAvailable() || queryCards().isEmpty() -> {
KeyguardQuickAffordanceConfig.PickerScreenState.Disabled( KeyguardQuickAffordanceConfig.PickerScreenState.Disabled(
instructions = instructions =
listOf( listOf(
@@ -146,6 +146,11 @@ constructor(
} }
} }
private fun isWalletAvailable() =
with(walletController.walletClient) {
isWalletServiceAvailable && isWalletFeatureAvailable
}
private fun state( private fun state(
isFeatureEnabled: Boolean, isFeatureEnabled: Boolean,
hasCard: Boolean, hasCard: Boolean,

View File

@@ -92,8 +92,8 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() {
} }
@Test @Test
fun affordance_walletNotEnabled_modelIsNone() = runBlockingTest { fun affordance_walletFeatureNotEnabled_modelIsNone() = runBlockingTest {
setUpState(isWalletEnabled = false) setUpState(isWalletFeatureAvailable = false)
var latest: KeyguardQuickAffordanceConfig.LockScreenState? = null var latest: KeyguardQuickAffordanceConfig.LockScreenState? = null
val job = underTest.lockScreenState.onEach { latest = it }.launchIn(this) val job = underTest.lockScreenState.onEach { latest = it }.launchIn(this)
@@ -165,7 +165,7 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() {
@Test @Test
fun getPickerScreenState_disabledWhenTheFeatureIsNotEnabled() = runTest { fun getPickerScreenState_disabledWhenTheFeatureIsNotEnabled() = runTest {
setUpState( setUpState(
isWalletEnabled = false, isWalletFeatureAvailable = false,
) )
assertThat(underTest.getPickerScreenState()) assertThat(underTest.getPickerScreenState())
@@ -183,16 +183,15 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() {
} }
private fun setUpState( private fun setUpState(
isWalletEnabled: Boolean = true, isWalletFeatureAvailable: Boolean = true,
isWalletServiceAvailable: Boolean = true, isWalletServiceAvailable: Boolean = true,
isWalletQuerySuccessful: Boolean = true, isWalletQuerySuccessful: Boolean = true,
hasSelectedCard: Boolean = true, hasSelectedCard: Boolean = true,
) { ) {
whenever(walletController.isWalletEnabled).thenReturn(isWalletEnabled)
val walletClient: QuickAccessWalletClient = mock() val walletClient: QuickAccessWalletClient = mock()
whenever(walletClient.tileIcon).thenReturn(ICON) whenever(walletClient.tileIcon).thenReturn(ICON)
whenever(walletClient.isWalletServiceAvailable).thenReturn(isWalletServiceAvailable) whenever(walletClient.isWalletServiceAvailable).thenReturn(isWalletServiceAvailable)
whenever(walletClient.isWalletFeatureAvailable).thenReturn(isWalletFeatureAvailable)
whenever(walletController.walletClient).thenReturn(walletClient) whenever(walletController.walletClient).thenReturn(walletClient)