diff options
| author | 2024-05-07 10:43:02 -0400 | |
|---|---|---|
| committer | 2024-05-07 10:43:26 -0400 | |
| commit | 16bc176b398f34ee7cf532550cd4c0ac78d46113 (patch) | |
| tree | a3187865d6f6830e927e861debcfc39f07b720f4 | |
| parent | 2f35724db6eac2033cc73f69801e4d9fb65edd75 (diff) | |
Parameterize FooterViewModelTest for scene container flag
Bug: 334874076
Test: yes
Flag: ACONFIG com.android.systemui.scene_container DEVELOPMENT
Change-Id: I677b29e8dae400afe0d670415430c439245712d9
| -rw-r--r-- | packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/footer/ui/viewmodel/FooterViewModelTest.kt | 44 |
1 files changed, 32 insertions, 12 deletions
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/footer/ui/viewmodel/FooterViewModelTest.kt b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/footer/ui/viewmodel/FooterViewModelTest.kt index 158f38d48197..347620a1631a 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/footer/ui/viewmodel/FooterViewModelTest.kt +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/footer/ui/viewmodel/FooterViewModelTest.kt @@ -19,12 +19,13 @@ package com.android.systemui.statusbar.notification.footer.ui.viewmodel import android.platform.test.annotations.EnableFlags +import android.platform.test.flag.junit.FlagsParameterization import android.provider.Settings -import android.testing.AndroidTestingRunner import androidx.test.filters.SmallTest import com.android.systemui.SysuiTestCase import com.android.systemui.coroutines.collectLastValue import com.android.systemui.flags.Flags +import com.android.systemui.flags.andSceneContainer import com.android.systemui.flags.fakeFeatureFlagsClassic import com.android.systemui.keyguard.data.repository.fakeKeyguardRepository import com.android.systemui.keyguard.shared.model.StatusBarState @@ -33,7 +34,7 @@ import com.android.systemui.power.data.repository.powerRepository import com.android.systemui.power.shared.model.WakeSleepReason import com.android.systemui.power.shared.model.WakefulnessState import com.android.systemui.res.R -import com.android.systemui.shade.data.repository.shadeRepository +import com.android.systemui.shade.shadeTestUtil import com.android.systemui.shared.settings.data.repository.fakeSecureSettingsRepository import com.android.systemui.statusbar.notification.collection.render.NotifStats import com.android.systemui.statusbar.notification.data.repository.activeNotificationListRepository @@ -45,13 +46,16 @@ import com.google.common.truth.Truth.assertThat import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.runCurrent 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 -@RunWith(AndroidTestingRunner::class) +@RunWith(ParameterizedAndroidJunit4::class) @SmallTest @EnableFlags(FooterViewRefactor.FLAG_NAME) -class FooterViewModelTest : SysuiTestCase() { +class FooterViewModelTest(flags: FlagsParameterization?) : SysuiTestCase() { private val kosmos = testKosmos().apply { fakeFeatureFlagsClassic.apply { set(Flags.FULL_SCREEN_USER_SWITCHER, false) } @@ -59,11 +63,29 @@ class FooterViewModelTest : SysuiTestCase() { private val testScope = kosmos.testScope private val activeNotificationListRepository = kosmos.activeNotificationListRepository private val fakeKeyguardRepository = kosmos.fakeKeyguardRepository - private val shadeRepository = kosmos.shadeRepository private val powerRepository = kosmos.powerRepository private val fakeSecureSettingsRepository = kosmos.fakeSecureSettingsRepository - val underTest = kosmos.footerViewModel + private val shadeTestUtil by lazy { kosmos.shadeTestUtil } + + private lateinit var underTest: FooterViewModel + + companion object { + @JvmStatic + @Parameters(name = "{0}") + fun getParams(): List<FlagsParameterization> { + return FlagsParameterization.allCombinationsOf().andSceneContainer() + } + } + + init { + mSetFlagsRule.setFlagsParameterization(flags!!) + } + + @Before + fun setup() { + underTest = kosmos.footerViewModel + } @Test fun messageVisible_whenFilteredNotifications() = @@ -146,11 +168,9 @@ class FooterViewModelTest : SysuiTestCase() { val visible by collectLastValue(underTest.clearAllButton.isVisible) runCurrent() - // WHEN shade is expanded + // WHEN shade is expanded AND QS not expanded fakeKeyguardRepository.setStatusBarState(StatusBarState.SHADE) - shadeRepository.setLegacyShadeExpansion(1f) - // AND QS not expanded - shadeRepository.setQsExpansion(0f) + shadeTestUtil.setShadeAndQsExpansion(1f, 0f) // AND device is awake powerRepository.updateWakefulness( rawState = WakefulnessState.AWAKE, @@ -182,9 +202,9 @@ class FooterViewModelTest : SysuiTestCase() { // WHEN shade is collapsed fakeKeyguardRepository.setStatusBarState(StatusBarState.SHADE) - shadeRepository.setLegacyShadeExpansion(0f) + shadeTestUtil.setShadeExpansion(0f) // AND QS not expanded - shadeRepository.setQsExpansion(0f) + shadeTestUtil.setQsExpansion(0f) // AND device is awake powerRepository.updateWakefulness( rawState = WakefulnessState.AWAKE, |