Loading packages/SystemUI/src/com/android/systemui/keyguard/data/quickaffordance/QuickAccessWalletKeyguardQuickAffordanceConfig.kt +7 −2 Original line number Diff line number Diff line Loading @@ -63,7 +63,7 @@ constructor( val hasCards = response?.walletCards?.isNotEmpty() == true trySendWithFailureLogging( state( isFeatureEnabled = walletController.isWalletEnabled, isFeatureEnabled = isWalletAvailable(), hasCard = hasCards, tileIcon = walletController.walletClient.tileIcon, ), Loading Loading @@ -100,7 +100,7 @@ constructor( return when { !walletController.walletClient.isWalletServiceAvailable -> KeyguardQuickAffordanceConfig.PickerScreenState.UnavailableOnDevice !walletController.isWalletEnabled || queryCards().isEmpty() -> { !isWalletAvailable() || queryCards().isEmpty() -> { KeyguardQuickAffordanceConfig.PickerScreenState.Disabled( instructions = listOf( Loading Loading @@ -146,6 +146,11 @@ constructor( } } private fun isWalletAvailable() = with(walletController.walletClient) { isWalletServiceAvailable && isWalletFeatureAvailable } private fun state( isFeatureEnabled: Boolean, hasCard: Boolean, Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/data/quickaffordance/QuickAccessWalletKeyguardQuickAffordanceConfigTest.kt +5 −6 Original line number Diff line number Diff line Loading @@ -92,8 +92,8 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() { } @Test fun affordance_walletNotEnabled_modelIsNone() = runBlockingTest { setUpState(isWalletEnabled = false) fun affordance_walletFeatureNotEnabled_modelIsNone() = runBlockingTest { setUpState(isWalletFeatureAvailable = false) var latest: KeyguardQuickAffordanceConfig.LockScreenState? = null val job = underTest.lockScreenState.onEach { latest = it }.launchIn(this) Loading Loading @@ -165,7 +165,7 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() { @Test fun getPickerScreenState_disabledWhenTheFeatureIsNotEnabled() = runTest { setUpState( isWalletEnabled = false, isWalletFeatureAvailable = false, ) assertThat(underTest.getPickerScreenState()) Loading @@ -183,16 +183,15 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() { } private fun setUpState( isWalletEnabled: Boolean = true, isWalletFeatureAvailable: Boolean = true, isWalletServiceAvailable: Boolean = true, isWalletQuerySuccessful: Boolean = true, hasSelectedCard: Boolean = true, ) { whenever(walletController.isWalletEnabled).thenReturn(isWalletEnabled) val walletClient: QuickAccessWalletClient = mock() whenever(walletClient.tileIcon).thenReturn(ICON) whenever(walletClient.isWalletServiceAvailable).thenReturn(isWalletServiceAvailable) whenever(walletClient.isWalletFeatureAvailable).thenReturn(isWalletFeatureAvailable) whenever(walletController.walletClient).thenReturn(walletClient) Loading Loading
packages/SystemUI/src/com/android/systemui/keyguard/data/quickaffordance/QuickAccessWalletKeyguardQuickAffordanceConfig.kt +7 −2 Original line number Diff line number Diff line Loading @@ -63,7 +63,7 @@ constructor( val hasCards = response?.walletCards?.isNotEmpty() == true trySendWithFailureLogging( state( isFeatureEnabled = walletController.isWalletEnabled, isFeatureEnabled = isWalletAvailable(), hasCard = hasCards, tileIcon = walletController.walletClient.tileIcon, ), Loading Loading @@ -100,7 +100,7 @@ constructor( return when { !walletController.walletClient.isWalletServiceAvailable -> KeyguardQuickAffordanceConfig.PickerScreenState.UnavailableOnDevice !walletController.isWalletEnabled || queryCards().isEmpty() -> { !isWalletAvailable() || queryCards().isEmpty() -> { KeyguardQuickAffordanceConfig.PickerScreenState.Disabled( instructions = listOf( Loading Loading @@ -146,6 +146,11 @@ constructor( } } private fun isWalletAvailable() = with(walletController.walletClient) { isWalletServiceAvailable && isWalletFeatureAvailable } private fun state( isFeatureEnabled: Boolean, hasCard: Boolean, Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/data/quickaffordance/QuickAccessWalletKeyguardQuickAffordanceConfigTest.kt +5 −6 Original line number Diff line number Diff line Loading @@ -92,8 +92,8 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() { } @Test fun affordance_walletNotEnabled_modelIsNone() = runBlockingTest { setUpState(isWalletEnabled = false) fun affordance_walletFeatureNotEnabled_modelIsNone() = runBlockingTest { setUpState(isWalletFeatureAvailable = false) var latest: KeyguardQuickAffordanceConfig.LockScreenState? = null val job = underTest.lockScreenState.onEach { latest = it }.launchIn(this) Loading Loading @@ -165,7 +165,7 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() { @Test fun getPickerScreenState_disabledWhenTheFeatureIsNotEnabled() = runTest { setUpState( isWalletEnabled = false, isWalletFeatureAvailable = false, ) assertThat(underTest.getPickerScreenState()) Loading @@ -183,16 +183,15 @@ class QuickAccessWalletKeyguardQuickAffordanceConfigTest : SysuiTestCase() { } private fun setUpState( isWalletEnabled: Boolean = true, isWalletFeatureAvailable: Boolean = true, isWalletServiceAvailable: Boolean = true, isWalletQuerySuccessful: Boolean = true, hasSelectedCard: Boolean = true, ) { whenever(walletController.isWalletEnabled).thenReturn(isWalletEnabled) val walletClient: QuickAccessWalletClient = mock() whenever(walletClient.tileIcon).thenReturn(ICON) whenever(walletClient.isWalletServiceAvailable).thenReturn(isWalletServiceAvailable) whenever(walletClient.isWalletFeatureAvailable).thenReturn(isWalletFeatureAvailable) whenever(walletController.walletClient).thenReturn(walletClient) Loading