Loading packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModelTest.kt +46 −27 Original line number Diff line number Diff line Loading @@ -19,24 +19,25 @@ package com.android.systemui.keyguard.ui.viewmodel import android.platform.test.flag.junit.FlagsParameterization import android.view.View import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.compose.animation.scene.ObservableTransitionState import com.android.systemui.Flags as AConfigFlags import com.android.systemui.Flags.FLAG_NEW_AOD_TRANSITION import com.android.systemui.SysuiTestCase import com.android.systemui.communal.data.repository.communalRepository import com.android.systemui.communal.shared.model.CommunalScenes import com.android.systemui.coroutines.collectLastValue import com.android.systemui.deviceentry.data.repository.fakeDeviceEntryRepository import com.android.systemui.flags.parameterizeSceneContainerFlag import com.android.systemui.keyguard.data.repository.fakeKeyguardRepository import com.android.systemui.keyguard.data.repository.fakeKeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.kosmos.testScope import com.android.systemui.shade.data.repository.fakeShadeRepository import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.shade.shadeTestUtil import com.android.systemui.statusbar.notification.stack.domain.interactor.notificationsKeyguardInteractor import com.android.systemui.statusbar.phone.dozeParameters import com.android.systemui.statusbar.phone.screenOffAnimationController Loading @@ -53,33 +54,51 @@ import kotlinx.coroutines.test.runTest import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import platform.test.runner.parameterized.ParameterizedAndroidJunit4 import platform.test.runner.parameterized.Parameters import com.android.systemui.Flags as AConfigFlags @SmallTest @RunWith(AndroidJUnit4::class) class KeyguardRootViewModelTest : SysuiTestCase() { @RunWith(ParameterizedAndroidJunit4::class) class KeyguardRootViewModelTest(flags: FlagsParameterization?) : SysuiTestCase() { private val kosmos = testKosmos() private val testScope = kosmos.testScope private val keyguardTransitionRepository = kosmos.fakeKeyguardTransitionRepository private val keyguardRepository = kosmos.fakeKeyguardRepository private val communalRepository = kosmos.communalRepository private val screenOffAnimationController = kosmos.screenOffAnimationController private val deviceEntryRepository = kosmos.fakeDeviceEntryRepository private val notificationsKeyguardInteractor = kosmos.notificationsKeyguardInteractor private val dozeParameters = kosmos.dozeParameters private val shadeRepository = kosmos.fakeShadeRepository private val keyguardTransitionRepository by lazy { kosmos.fakeKeyguardTransitionRepository } private val keyguardRepository by lazy { kosmos.fakeKeyguardRepository } private val communalRepository by lazy { kosmos.communalRepository } private val screenOffAnimationController by lazy { kosmos.screenOffAnimationController } private val deviceEntryRepository by lazy { kosmos.fakeDeviceEntryRepository } private val notificationsKeyguardInteractor by lazy { kosmos.notificationsKeyguardInteractor } private val dozeParameters by lazy { kosmos.dozeParameters } private val shadeTestUtil by lazy { kosmos.shadeTestUtil } private val underTest by lazy { kosmos.keyguardRootViewModel } private val viewState = ViewStateAccessor() // add to init block companion object { @JvmStatic @Parameters(name = "{0}") fun getParams(): List<FlagsParameterization> { return parameterizeSceneContainerFlag() } } init { mSetFlagsRule.setFlagsParameterization(flags!!) } @Before fun setUp() { mSetFlagsRule.enableFlags(AConfigFlags.FLAG_KEYGUARD_BOTTOM_AREA_REFACTOR) mSetFlagsRule.enableFlags(FLAG_NEW_AOD_TRANSITION) if (!SceneContainerFlag.isEnabled) { mSetFlagsRule.enableFlags(AConfigFlags.FLAG_KEYGUARD_BOTTOM_AREA_REFACTOR) mSetFlagsRule.disableFlags( AConfigFlags.FLAG_MIGRATE_CLOCKS_TO_BLUEPRINT, AConfigFlags.FLAG_REFACTOR_KEYGUARD_DISMISS_INTENT, ) } } @Test fun defaultBurnInScaleEqualsOne() = Loading Loading @@ -336,10 +355,10 @@ class KeyguardRootViewModelTest : SysuiTestCase() { testScope, ) shadeRepository.setQsExpansion(0f) shadeTestUtil.setQsExpansion(0f) assertThat(alpha).isEqualTo(1f) shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } Loading @@ -356,11 +375,11 @@ class KeyguardRootViewModelTest : SysuiTestCase() { ) // Open the shade. shadeRepository.setQsExpansion(1f) shadeTestUtil.setQsExpansion(1f) assertThat(alpha).isEqualTo(0f) // Close the shade, alpha returns to 1. shadeRepository.setQsExpansion(0f) shadeTestUtil.setQsExpansion(0f) assertThat(alpha).isEqualTo(1f) } Loading @@ -377,11 +396,11 @@ class KeyguardRootViewModelTest : SysuiTestCase() { ) // Open the shade. shadeRepository.setQsExpansion(1f) shadeTestUtil.setQsExpansion(1f) assertThat(alpha).isEqualTo(0f) // Close the shade, alpha is still 0 since we're not on the lockscreen. shadeRepository.setQsExpansion(0f) shadeTestUtil.setQsExpansion(0f) assertThat(alpha).isEqualTo(0f) } Loading @@ -400,7 +419,7 @@ class KeyguardRootViewModelTest : SysuiTestCase() { assertThat(alpha).isEqualTo(0f) // Try pulling down shade and ensure the value doesn't change shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } Loading @@ -419,7 +438,7 @@ class KeyguardRootViewModelTest : SysuiTestCase() { assertThat(alpha).isEqualTo(0f) // Try pulling down shade and ensure the value doesn't change shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } Loading @@ -438,7 +457,7 @@ class KeyguardRootViewModelTest : SysuiTestCase() { assertThat(alpha).isEqualTo(0f) // Try pulling down shade and ensure the value doesn't change shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } } packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardBottomAreaViewModelTest.kt +16 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.keyguard.ui.viewmodel import android.app.admin.DevicePolicyManager import android.content.Intent import android.os.UserHandle import android.platform.test.flag.junit.FlagsParameterization import androidx.test.filters.SmallTest import com.android.internal.logging.testing.UiEventLoggerFake import com.android.internal.widget.LockPatternUtils Loading @@ -32,6 +33,7 @@ import com.android.systemui.dock.DockManagerFake import com.android.systemui.doze.util.BurnInHelperWrapper import com.android.systemui.flags.FakeFeatureFlags import com.android.systemui.flags.Flags import com.android.systemui.flags.andSceneContainer import com.android.systemui.keyguard.data.quickaffordance.BuiltInKeyguardQuickAffordanceKeys import com.android.systemui.keyguard.data.quickaffordance.FakeKeyguardQuickAffordanceConfig import com.android.systemui.keyguard.data.quickaffordance.FakeKeyguardQuickAffordanceProviderClientFactory Loading Loading @@ -75,17 +77,18 @@ import kotlinx.coroutines.test.runTest import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.JUnit4 import org.mockito.ArgumentMatchers.anyInt import org.mockito.ArgumentMatchers.anyString import org.mockito.Mock import org.mockito.Mockito import org.mockito.Mockito.verifyZeroInteractions import org.mockito.MockitoAnnotations import platform.test.runner.parameterized.ParameterizedAndroidJunit4 import platform.test.runner.parameterized.Parameters @SmallTest @RunWith(JUnit4::class) class KeyguardBottomAreaViewModelTest : SysuiTestCase() { @RunWith(ParameterizedAndroidJunit4::class) class KeyguardBottomAreaViewModelTest(flags: FlagsParameterization?) : SysuiTestCase() { @Mock private lateinit var expandable: Expandable @Mock private lateinit var burnInHelperWrapper: BurnInHelperWrapper Loading @@ -111,6 +114,10 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() { private val kosmos = testKosmos() init { mSetFlagsRule.setFlagsParameterization(flags!!) } @Before fun setUp() { MockitoAnnotations.initMocks(this) Loading Loading @@ -750,5 +757,11 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() { companion object { private const val DEFAULT_BURN_IN_OFFSET = 5 private const val RETURNED_BURN_IN_OFFSET = 3 @JvmStatic @Parameters(name = "{0}") fun getParams(): List<FlagsParameterization> { return FlagsParameterization.allCombinationsOf().andSceneContainer() } } } Loading
packages/SystemUI/multivalentTests/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardRootViewModelTest.kt +46 −27 Original line number Diff line number Diff line Loading @@ -19,24 +19,25 @@ package com.android.systemui.keyguard.ui.viewmodel import android.platform.test.flag.junit.FlagsParameterization import android.view.View import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.SmallTest import com.android.compose.animation.scene.ObservableTransitionState import com.android.systemui.Flags as AConfigFlags import com.android.systemui.Flags.FLAG_NEW_AOD_TRANSITION import com.android.systemui.SysuiTestCase import com.android.systemui.communal.data.repository.communalRepository import com.android.systemui.communal.shared.model.CommunalScenes import com.android.systemui.coroutines.collectLastValue import com.android.systemui.deviceentry.data.repository.fakeDeviceEntryRepository import com.android.systemui.flags.parameterizeSceneContainerFlag import com.android.systemui.keyguard.data.repository.fakeKeyguardRepository import com.android.systemui.keyguard.data.repository.fakeKeyguardTransitionRepository import com.android.systemui.keyguard.shared.model.KeyguardState import com.android.systemui.keyguard.shared.model.TransitionState import com.android.systemui.keyguard.shared.model.TransitionStep import com.android.systemui.kosmos.testScope import com.android.systemui.shade.data.repository.fakeShadeRepository import com.android.systemui.scene.shared.flag.SceneContainerFlag import com.android.systemui.shade.shadeTestUtil import com.android.systemui.statusbar.notification.stack.domain.interactor.notificationsKeyguardInteractor import com.android.systemui.statusbar.phone.dozeParameters import com.android.systemui.statusbar.phone.screenOffAnimationController Loading @@ -53,33 +54,51 @@ import kotlinx.coroutines.test.runTest import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import platform.test.runner.parameterized.ParameterizedAndroidJunit4 import platform.test.runner.parameterized.Parameters import com.android.systemui.Flags as AConfigFlags @SmallTest @RunWith(AndroidJUnit4::class) class KeyguardRootViewModelTest : SysuiTestCase() { @RunWith(ParameterizedAndroidJunit4::class) class KeyguardRootViewModelTest(flags: FlagsParameterization?) : SysuiTestCase() { private val kosmos = testKosmos() private val testScope = kosmos.testScope private val keyguardTransitionRepository = kosmos.fakeKeyguardTransitionRepository private val keyguardRepository = kosmos.fakeKeyguardRepository private val communalRepository = kosmos.communalRepository private val screenOffAnimationController = kosmos.screenOffAnimationController private val deviceEntryRepository = kosmos.fakeDeviceEntryRepository private val notificationsKeyguardInteractor = kosmos.notificationsKeyguardInteractor private val dozeParameters = kosmos.dozeParameters private val shadeRepository = kosmos.fakeShadeRepository private val keyguardTransitionRepository by lazy { kosmos.fakeKeyguardTransitionRepository } private val keyguardRepository by lazy { kosmos.fakeKeyguardRepository } private val communalRepository by lazy { kosmos.communalRepository } private val screenOffAnimationController by lazy { kosmos.screenOffAnimationController } private val deviceEntryRepository by lazy { kosmos.fakeDeviceEntryRepository } private val notificationsKeyguardInteractor by lazy { kosmos.notificationsKeyguardInteractor } private val dozeParameters by lazy { kosmos.dozeParameters } private val shadeTestUtil by lazy { kosmos.shadeTestUtil } private val underTest by lazy { kosmos.keyguardRootViewModel } private val viewState = ViewStateAccessor() // add to init block companion object { @JvmStatic @Parameters(name = "{0}") fun getParams(): List<FlagsParameterization> { return parameterizeSceneContainerFlag() } } init { mSetFlagsRule.setFlagsParameterization(flags!!) } @Before fun setUp() { mSetFlagsRule.enableFlags(AConfigFlags.FLAG_KEYGUARD_BOTTOM_AREA_REFACTOR) mSetFlagsRule.enableFlags(FLAG_NEW_AOD_TRANSITION) if (!SceneContainerFlag.isEnabled) { mSetFlagsRule.enableFlags(AConfigFlags.FLAG_KEYGUARD_BOTTOM_AREA_REFACTOR) mSetFlagsRule.disableFlags( AConfigFlags.FLAG_MIGRATE_CLOCKS_TO_BLUEPRINT, AConfigFlags.FLAG_REFACTOR_KEYGUARD_DISMISS_INTENT, ) } } @Test fun defaultBurnInScaleEqualsOne() = Loading Loading @@ -336,10 +355,10 @@ class KeyguardRootViewModelTest : SysuiTestCase() { testScope, ) shadeRepository.setQsExpansion(0f) shadeTestUtil.setQsExpansion(0f) assertThat(alpha).isEqualTo(1f) shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } Loading @@ -356,11 +375,11 @@ class KeyguardRootViewModelTest : SysuiTestCase() { ) // Open the shade. shadeRepository.setQsExpansion(1f) shadeTestUtil.setQsExpansion(1f) assertThat(alpha).isEqualTo(0f) // Close the shade, alpha returns to 1. shadeRepository.setQsExpansion(0f) shadeTestUtil.setQsExpansion(0f) assertThat(alpha).isEqualTo(1f) } Loading @@ -377,11 +396,11 @@ class KeyguardRootViewModelTest : SysuiTestCase() { ) // Open the shade. shadeRepository.setQsExpansion(1f) shadeTestUtil.setQsExpansion(1f) assertThat(alpha).isEqualTo(0f) // Close the shade, alpha is still 0 since we're not on the lockscreen. shadeRepository.setQsExpansion(0f) shadeTestUtil.setQsExpansion(0f) assertThat(alpha).isEqualTo(0f) } Loading @@ -400,7 +419,7 @@ class KeyguardRootViewModelTest : SysuiTestCase() { assertThat(alpha).isEqualTo(0f) // Try pulling down shade and ensure the value doesn't change shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } Loading @@ -419,7 +438,7 @@ class KeyguardRootViewModelTest : SysuiTestCase() { assertThat(alpha).isEqualTo(0f) // Try pulling down shade and ensure the value doesn't change shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } Loading @@ -438,7 +457,7 @@ class KeyguardRootViewModelTest : SysuiTestCase() { assertThat(alpha).isEqualTo(0f) // Try pulling down shade and ensure the value doesn't change shadeRepository.setQsExpansion(0.5f) shadeTestUtil.setQsExpansion(0.5f) assertThat(alpha).isEqualTo(0f) } }
packages/SystemUI/tests/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardBottomAreaViewModelTest.kt +16 −3 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.keyguard.ui.viewmodel import android.app.admin.DevicePolicyManager import android.content.Intent import android.os.UserHandle import android.platform.test.flag.junit.FlagsParameterization import androidx.test.filters.SmallTest import com.android.internal.logging.testing.UiEventLoggerFake import com.android.internal.widget.LockPatternUtils Loading @@ -32,6 +33,7 @@ import com.android.systemui.dock.DockManagerFake import com.android.systemui.doze.util.BurnInHelperWrapper import com.android.systemui.flags.FakeFeatureFlags import com.android.systemui.flags.Flags import com.android.systemui.flags.andSceneContainer import com.android.systemui.keyguard.data.quickaffordance.BuiltInKeyguardQuickAffordanceKeys import com.android.systemui.keyguard.data.quickaffordance.FakeKeyguardQuickAffordanceConfig import com.android.systemui.keyguard.data.quickaffordance.FakeKeyguardQuickAffordanceProviderClientFactory Loading Loading @@ -75,17 +77,18 @@ import kotlinx.coroutines.test.runTest import org.junit.Before import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.JUnit4 import org.mockito.ArgumentMatchers.anyInt import org.mockito.ArgumentMatchers.anyString import org.mockito.Mock import org.mockito.Mockito import org.mockito.Mockito.verifyZeroInteractions import org.mockito.MockitoAnnotations import platform.test.runner.parameterized.ParameterizedAndroidJunit4 import platform.test.runner.parameterized.Parameters @SmallTest @RunWith(JUnit4::class) class KeyguardBottomAreaViewModelTest : SysuiTestCase() { @RunWith(ParameterizedAndroidJunit4::class) class KeyguardBottomAreaViewModelTest(flags: FlagsParameterization?) : SysuiTestCase() { @Mock private lateinit var expandable: Expandable @Mock private lateinit var burnInHelperWrapper: BurnInHelperWrapper Loading @@ -111,6 +114,10 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() { private val kosmos = testKosmos() init { mSetFlagsRule.setFlagsParameterization(flags!!) } @Before fun setUp() { MockitoAnnotations.initMocks(this) Loading Loading @@ -750,5 +757,11 @@ class KeyguardBottomAreaViewModelTest : SysuiTestCase() { companion object { private const val DEFAULT_BURN_IN_OFFSET = 5 private const val RETURNED_BURN_IN_OFFSET = 3 @JvmStatic @Parameters(name = "{0}") fun getParams(): List<FlagsParameterization> { return FlagsParameterization.allCombinationsOf().andSceneContainer() } } }