Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 23461ab4 authored by Yining Liu's avatar Yining Liu
Browse files

Fix AvalancheControllerTest

Fix the broken AvalancheControllerTest

Test: atest AvalancheControllerTest
Fix: 409092211
Flag: com.android.systemui.avalanche_replace_hun_when_critical
Change-Id: Ic182146868e97aad4bc00d4cd56e0e74e33bbd97
parent 81b9d3bd
Loading
Loading
Loading
Loading
+21 −6
Original line number Diff line number Diff line
@@ -400,6 +400,7 @@ class AvalancheControllerTest(val flags: FlagsParameterization) : SysuiTestCase(
    }

    @Test
    @DisableFlags(AvalancheReplaceHunWhenCritical.FLAG_NAME)
    fun testGetDuration_nextEntryHigherPriority_500() {
        // Entry is showing
        val showingEntry = createHeadsUpEntry(id = 0)
@@ -410,16 +411,27 @@ class AvalancheControllerTest(val flags: FlagsParameterization) : SysuiTestCase(
        mAvalancheController.addToNext(nextEntry, runnableMock!!)

        // Next entry has higher priority
        if (AvalancheReplaceHunWhenCritical.isEnabled) {
            assertThat(showingEntry.getNextHunPriority(nextEntry))
                .isInstanceOf(NextHunPriority.HigherPriority::class.java)
        }
        assertThat(nextEntry.compareNonTimeFields(showingEntry)).isEqualTo(-1)

        val durationMs = mAvalancheController.getDuration(showingEntry, autoDismissMsValue = 5000)
        assertThat((durationMs as RemainingDuration.UpdatedDuration).duration).isEqualTo(500)
    }

    @Test
    @EnableFlags(AvalancheReplaceHunWhenCritical.FLAG_NAME)
    fun testGetDuration_currentNotCritival_nextEntryFsi_hideImmediately() {
        // Normal HUN Entry is showing
        val showingEntry = createHeadsUpEntry(id = 0)
        mAvalancheController.headsUpEntryShowing = showingEntry

        // There's another FSI entry waiting to show next
        val nextEntry = createFsiHeadsUpEntry(id = 1)
        mAvalancheController.addToNext(nextEntry, runnableMock!!)

        // Then: should hide immediately
        val duration = mAvalancheController.getDuration(showingEntry, autoDismissMsValue = 5000)
        assertThat(duration).isEqualTo(RemainingDuration.HideImmediately)
    }

    @Test
    @DisableFlags(PromotedNotificationUi.FLAG_NAME)
    fun testGetDuration_nextEntryIsPinnedByUser_flagOff_1000() {
@@ -529,7 +541,10 @@ class AvalancheControllerTest(val flags: FlagsParameterization) : SysuiTestCase(
        @JvmStatic
        @Parameters(name = "{0}")
        fun getParams(): List<FlagsParameterization> {
            return FlagsParameterization.allCombinationsOf(PromotedNotificationUi.FLAG_NAME)
            return FlagsParameterization.allCombinationsOf(
                PromotedNotificationUi.FLAG_NAME,
                AvalancheReplaceHunWhenCritical.FLAG_NAME,
            )
        }
    }
}