Loading packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorTest.kt +10 −7 Original line number Diff line number Diff line Loading @@ -46,13 +46,17 @@ import com.android.systemui.keyguard.shared.model.KeyguardQuickAffordancePickerR import com.android.systemui.keyguard.shared.quickaffordance.ActivationState import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancePosition import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.kosmos.testDispatcher import com.android.systemui.kosmos.testScope import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.shared.keyguard.shared.model.KeyguardQuickAffordanceSlots import com.android.systemui.statusbar.policy.KeyguardStateController import com.android.systemui.testKosmos import com.android.systemui.util.FakeSharedPreferences import com.android.systemui.util.mockito.mock import com.android.systemui.util.mockito.whenever Loading @@ -60,8 +64,6 @@ import com.android.systemui.util.settings.FakeSettings import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.test.StandardTestDispatcher import kotlinx.coroutines.test.TestScope import kotlinx.coroutines.test.runCurrent import kotlinx.coroutines.test.runTest import org.junit.Before Loading @@ -86,9 +88,11 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { @Mock private lateinit var shadeInteractor: ShadeInteractor @Mock private lateinit var logger: KeyguardQuickAffordancesMetricsLogger private val kosmos = testKosmos() private lateinit var underTest: KeyguardQuickAffordanceInteractor private lateinit var testScope: TestScope private val testScope = kosmos.testScope private lateinit var repository: FakeKeyguardRepository private lateinit var homeControls: FakeKeyguardQuickAffordanceConfig private lateinit var quickAccessWallet: FakeKeyguardQuickAffordanceConfig Loading Loading @@ -125,8 +129,6 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { ) qrCodeScanner = FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.QR_CODE_SCANNER) val testDispatcher = StandardTestDispatcher() testScope = TestScope(testDispatcher) dockManager = DockManagerFake() biometricSettingsRepository = FakeBiometricSettingsRepository() Loading Loading @@ -165,7 +167,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { legacySettingSyncer = KeyguardQuickAffordanceLegacySettingSyncer( scope = testScope.backgroundScope, backgroundDispatcher = testDispatcher, backgroundDispatcher = kosmos.testDispatcher, secureSettings = FakeSettings(), selectionsManager = localUserSelectionManager, ), Loading Loading @@ -195,8 +197,9 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { devicePolicyManager = devicePolicyManager, dockManager = dockManager, biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, backgroundDispatcher = kosmos.testDispatcher, appContext = context, sceneInteractor = { kosmos.sceneInteractor }, ) whenever(shadeInteractor.anyExpansion).thenReturn(MutableStateFlow(0f)) Loading packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt +20 −1 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import android.content.Context import android.content.Intent import android.util.Log import com.android.app.tracing.coroutines.withContext import com.android.compose.animation.scene.ObservableTransitionState import com.android.internal.widget.LockPatternUtils import com.android.systemui.animation.DialogTransitionAnimator import com.android.systemui.animation.Expandable Loading @@ -45,6 +46,9 @@ import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAfforda import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.SceneInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.shared.customization.data.content.CustomizationProviderContract as Contract Loading Loading @@ -82,6 +86,7 @@ constructor( private val biometricSettingsRepository: BiometricSettingsRepository, @Background private val backgroundDispatcher: CoroutineDispatcher, @Application private val appContext: Context, private val sceneInteractor: Lazy<SceneInteractor>, ) { /** Loading @@ -102,7 +107,21 @@ constructor( return combine( quickAffordanceAlwaysVisible(position), keyguardInteractor.isDozing, keyguardInteractor.isKeyguardShowing, if (SceneContainerFlag.isEnabled) { sceneInteractor .get() .transitionState .map { when (it) { is ObservableTransitionState.Idle -> it.scene == Scenes.Lockscreen is ObservableTransitionState.Transition -> it.fromScene == Scenes.Lockscreen || it.toScene == Scenes.Lockscreen } } .distinctUntilChanged() } else { keyguardInteractor.isKeyguardShowing }, shadeInteractor.anyExpansion.map { it < 1.0f }.distinctUntilChanged(), biometricSettingsRepository.isCurrentUserInLockdown, ) { affordance, isDozing, isKeyguardShowing, isQuickSettingsVisible, isUserInLockdown -> Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/CustomizationProviderTest.kt +2 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ import com.android.systemui.keyguard.ui.preview.KeyguardPreviewRendererFactory import com.android.systemui.keyguard.ui.preview.KeyguardRemotePreviewManager import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.shadeInteractor Loading Loading @@ -203,6 +204,7 @@ class CustomizationProviderTest : SysuiTestCase() { biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, appContext = mContext, sceneInteractor = { kosmos.sceneInteractor }, ) underTest.previewManager = KeyguardRemotePreviewManager( Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorParameterizedTest.kt +2 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepo import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancePosition import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.plugins.ActivityStarter import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.FakeUserTracker import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker Loading Loading @@ -329,6 +330,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() { biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, appContext = mContext, sceneInteractor = { kosmos.sceneInteractor }, ) } Loading packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardBottomAreaViewModelTest.kt +2 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAfforda import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.shadeInteractor Loading Loading @@ -233,6 +234,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() { biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, appContext = mContext, sceneInteractor = { kosmos.sceneInteractor }, ), bottomAreaInteractor = KeyguardBottomAreaInteractor(repository = repository), burnInHelperWrapper = burnInHelperWrapper, Loading Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorTest.kt +10 −7 Original line number Diff line number Diff line Loading @@ -46,13 +46,17 @@ import com.android.systemui.keyguard.shared.model.KeyguardQuickAffordancePickerR import com.android.systemui.keyguard.shared.quickaffordance.ActivationState import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancePosition import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.kosmos.testDispatcher import com.android.systemui.kosmos.testScope import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.shared.keyguard.shared.model.KeyguardQuickAffordanceSlots import com.android.systemui.statusbar.policy.KeyguardStateController import com.android.systemui.testKosmos import com.android.systemui.util.FakeSharedPreferences import com.android.systemui.util.mockito.mock import com.android.systemui.util.mockito.whenever Loading @@ -60,8 +64,6 @@ import com.android.systemui.util.settings.FakeSettings import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.test.StandardTestDispatcher import kotlinx.coroutines.test.TestScope import kotlinx.coroutines.test.runCurrent import kotlinx.coroutines.test.runTest import org.junit.Before Loading @@ -86,9 +88,11 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { @Mock private lateinit var shadeInteractor: ShadeInteractor @Mock private lateinit var logger: KeyguardQuickAffordancesMetricsLogger private val kosmos = testKosmos() private lateinit var underTest: KeyguardQuickAffordanceInteractor private lateinit var testScope: TestScope private val testScope = kosmos.testScope private lateinit var repository: FakeKeyguardRepository private lateinit var homeControls: FakeKeyguardQuickAffordanceConfig private lateinit var quickAccessWallet: FakeKeyguardQuickAffordanceConfig Loading Loading @@ -125,8 +129,6 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { ) qrCodeScanner = FakeKeyguardQuickAffordanceConfig(BuiltInKeyguardQuickAffordanceKeys.QR_CODE_SCANNER) val testDispatcher = StandardTestDispatcher() testScope = TestScope(testDispatcher) dockManager = DockManagerFake() biometricSettingsRepository = FakeBiometricSettingsRepository() Loading Loading @@ -165,7 +167,7 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { legacySettingSyncer = KeyguardQuickAffordanceLegacySettingSyncer( scope = testScope.backgroundScope, backgroundDispatcher = testDispatcher, backgroundDispatcher = kosmos.testDispatcher, secureSettings = FakeSettings(), selectionsManager = localUserSelectionManager, ), Loading Loading @@ -195,8 +197,9 @@ class KeyguardQuickAffordanceInteractorTest : SysuiTestCase() { devicePolicyManager = devicePolicyManager, dockManager = dockManager, biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, backgroundDispatcher = kosmos.testDispatcher, appContext = context, sceneInteractor = { kosmos.sceneInteractor }, ) whenever(shadeInteractor.anyExpansion).thenReturn(MutableStateFlow(0f)) Loading
packages/SystemUI/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractor.kt +20 −1 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import android.content.Context import android.content.Intent import android.util.Log import com.android.app.tracing.coroutines.withContext import com.android.compose.animation.scene.ObservableTransitionState import com.android.internal.widget.LockPatternUtils import com.android.systemui.animation.DialogTransitionAnimator import com.android.systemui.animation.Expandable Loading @@ -45,6 +46,9 @@ import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAfforda import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.SceneInteractor import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.scene.shared.model.Scenes import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.ShadeInteractor import com.android.systemui.shared.customization.data.content.CustomizationProviderContract as Contract Loading Loading @@ -82,6 +86,7 @@ constructor( private val biometricSettingsRepository: BiometricSettingsRepository, @Background private val backgroundDispatcher: CoroutineDispatcher, @Application private val appContext: Context, private val sceneInteractor: Lazy<SceneInteractor>, ) { /** Loading @@ -102,7 +107,21 @@ constructor( return combine( quickAffordanceAlwaysVisible(position), keyguardInteractor.isDozing, keyguardInteractor.isKeyguardShowing, if (SceneContainerFlag.isEnabled) { sceneInteractor .get() .transitionState .map { when (it) { is ObservableTransitionState.Idle -> it.scene == Scenes.Lockscreen is ObservableTransitionState.Transition -> it.fromScene == Scenes.Lockscreen || it.toScene == Scenes.Lockscreen } } .distinctUntilChanged() } else { keyguardInteractor.isKeyguardShowing }, shadeInteractor.anyExpansion.map { it < 1.0f }.distinctUntilChanged(), biometricSettingsRepository.isCurrentUserInLockdown, ) { affordance, isDozing, isKeyguardShowing, isQuickSettingsVisible, isUserInLockdown -> Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/CustomizationProviderTest.kt +2 −0 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ import com.android.systemui.keyguard.ui.preview.KeyguardPreviewRendererFactory import com.android.systemui.keyguard.ui.preview.KeyguardRemotePreviewManager import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.shadeInteractor Loading Loading @@ -203,6 +204,7 @@ class CustomizationProviderTest : SysuiTestCase() { biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, appContext = mContext, sceneInteractor = { kosmos.sceneInteractor }, ) underTest.previewManager = KeyguardRemotePreviewManager( Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorParameterizedTest.kt +2 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ import com.android.systemui.keyguard.data.repository.KeyguardQuickAffordanceRepo import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancePosition import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.plugins.ActivityStarter import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.FakeUserTracker import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker Loading Loading @@ -329,6 +330,7 @@ class KeyguardQuickAffordanceInteractorParameterizedTest : SysuiTestCase() { biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, appContext = mContext, sceneInteractor = { kosmos.sceneInteractor }, ) } Loading
packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardBottomAreaViewModelTest.kt +2 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,7 @@ import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAfforda import com.android.systemui.keyguard.shared.quickaffordance.KeyguardQuickAffordancesMetricsLogger import com.android.systemui.plugins.ActivityStarter import com.android.systemui.res.R import com.android.systemui.scene.domain.interactor.sceneInteractor import com.android.systemui.settings.UserFileManager import com.android.systemui.settings.UserTracker import com.android.systemui.shade.domain.interactor.shadeInteractor Loading Loading @@ -233,6 +234,7 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() { biometricSettingsRepository = biometricSettingsRepository, backgroundDispatcher = testDispatcher, appContext = mContext, sceneInteractor = { kosmos.sceneInteractor }, ), bottomAreaInteractor = KeyguardBottomAreaInteractor(repository = repository), burnInHelperWrapper = burnInHelperWrapper, Loading