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

Commit ba850b5a authored by Caitlin Shkuratov's avatar Caitlin Shkuratov
Browse files

[SB][Chips] Refactor OngoingActivityChipModel to be less nested.

Instead of having OngoingActivityChipModel.Active have 5 different
sub-classes for the 5 different types of chips, we can have every chip
be an instance of OngoingActivityChipModel.Active. Then we add a new
field to `Active` called `content`, and this `content` field has the 5
different sub-types.

Advantages:
 - Don't need to remember to re-fill in each parameter depending on the
   type of content you want to show (see simplification in
   NotifChipsViewModel and the removal of the TODO in
   OngoingActivityChipsViewModel)

 - In a future CL: The `ChipContent` Composable can just take in the
   `content` parameter instead of the full model.

Bug: 406754016
Bug: 364653005
Flag: EXEMPT refactor
Test: smoke test of all types of chips with ui_rich_ongoing, root_mod,
and chips_mod all enabled
Test: smoke test of all types of chip with ui_rich_ongoing, root_mod,
and chips_mod all disabled
Test: atest everything in statusbar.chips directory
Change-Id: If9c0fb451c8da6867ed240a27b14e0c89435cf1a

Change-Id: Ic4027ea2b705f221b6431c0d72705b625f7559e5
parent c05a93cb
Loading
Loading
Loading
Loading
+51 −21
Original line number Diff line number Diff line
@@ -126,7 +126,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = callPromotedContentBuilder().build(),
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isEqualTo(instanceId)
@@ -146,7 +147,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = null,
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isEqualTo(instanceId)
@@ -166,7 +168,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = callPromotedContentBuilder().build(),
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isEqualTo(instanceId)
@@ -197,7 +200,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            val instanceId = InstanceId.fakeInstanceId(10)
            addOngoingCallState(startTimeMs = -2, isAppVisible = false, instanceId = instanceId)

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isEqualTo(instanceId)
@@ -217,7 +221,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = callPromotedContentBuilder().build(),
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isEqualTo(instanceId)
@@ -237,7 +242,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = null,
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isEqualTo(instanceId)
@@ -257,7 +263,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = callPromotedContentBuilder().build(),
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isEqualTo(instanceId)
@@ -301,7 +308,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = callPromotedContentBuilder("laterNotif").build(),
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).key).contains("earlierNotif")
            assertThat((latest as OngoingActivityChipModel.Active).instanceId)
                .isEqualTo(instanceIdOld)
@@ -329,7 +337,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                promotedContent = callPromotedContentBuilder("laterNotif").build(),
            )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).key).contains("laterNotif")
            assertThat((latest as OngoingActivityChipModel.Active).instanceId)
                .isEqualTo(instanceIdNew)
@@ -355,7 +364,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {

            addOngoingCallState(startTimeMs = 0, isAppVisible = true)

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
        }
@@ -380,7 +390,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {

            addOngoingCallState(startTimeMs = -2, isAppVisible = true)

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
        }
@@ -405,7 +416,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {

            addOngoingCallState(startTimeMs = 345, isAppVisible = true)

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isFalse()
        }
@@ -424,7 +436,11 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            // started 2000ms ago (1000 - 3000). The OngoingActivityChipModel start time needs to be
            // relative to elapsedRealtime, so it should be 2000ms before the elapsed realtime set
            // on the clock.
            assertThat((latest as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(
                    ((latest as OngoingActivityChipModel.Active).content
                            as OngoingActivityChipModel.Content.Timer)
                        .startTimeMs
                )
                .isEqualTo(398_000)
        }

@@ -619,7 +635,11 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            // Start a call
            addOngoingCallState(key = "testKey", startTimeMs = 1000)
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active::class.java)
            assertThat((latest as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(
                    ((latest as OngoingActivityChipModel.Active).content
                            as OngoingActivityChipModel.Content.Timer)
                        .startTimeMs
                )
                .isEqualTo(398_000)

            // End the call
@@ -633,7 +653,11 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            // Start a new call, which started 1000ms ago
            addOngoingCallState(key = "testKey", startTimeMs = 102_000)
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active::class.java)
            assertThat((latest as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(
                    ((latest as OngoingActivityChipModel.Active).content
                            as OngoingActivityChipModel.Content.Timer)
                        .startTimeMs
                )
                .isEqualTo(499_000)
        }

@@ -996,7 +1020,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            factory.onCompose(expandable)
            var controller = factory.createController(forLaunch = false)
            controller.onTransitionAnimationStart(isExpandingFullyAbove = false)
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()

            // The chip changes state.
@@ -1007,7 +1032,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                uid = NOTIFICATION_UID,
                isAppVisible = true,
            )
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()

            // Reset the state and trigger a launch animation.
@@ -1023,7 +1049,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            factory.onCompose(expandable)
            controller = factory.createController(forLaunch = true)
            controller.onTransitionAnimationStart(isExpandingFullyAbove = false)
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()

            // The chip changes state.
@@ -1034,7 +1061,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
                uid = NOTIFICATION_UID,
                isAppVisible = true,
            )
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()
        }

@@ -1076,7 +1104,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            factory.onCompose(expandable)
            var controller = factory.createController(forLaunch = false)
            controller.onTransitionAnimationStart(isExpandingFullyAbove = false)
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()

            // The chip disappears.
@@ -1096,7 +1125,8 @@ class CallChipViewModelTest(flags: FlagsParameterization) : SysuiTestCase() {
            factory.onCompose(expandable)
            controller = factory.createController(forLaunch = true)
            controller.onTransitionAnimationStart(isExpandingFullyAbove = false)
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isHidden).isFalse()

            // The chip disappears.
+27 −9
Original line number Diff line number Diff line
@@ -134,7 +134,8 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
                    createTask(taskId = 1),
                )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isNotNull()

@@ -159,7 +160,8 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
                    hostPackage = CAST_TO_OTHER_DEVICES_PACKAGE
                )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isNotNull()

@@ -182,7 +184,8 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
            mediaProjectionRepo.mediaProjectionState.value =
                MediaProjectionState.Projecting.EntireScreen(CAST_TO_OTHER_DEVICES_PACKAGE)

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isNotNull()

@@ -223,7 +226,8 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
                    )
                )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isNotNull()

@@ -256,7 +260,8 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
                )

            // Only the projection info will show a timer
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).isImportantForPrivacy).isTrue()
            assertThat((latest as OngoingActivityChipModel.Active).instanceId).isNotNull()

@@ -400,7 +405,11 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
                MediaProjectionState.Projecting.EntireScreen(CAST_TO_OTHER_DEVICES_PACKAGE)

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active::class.java)
            assertThat((latest as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(
                    ((latest as OngoingActivityChipModel.Active).content
                            as OngoingActivityChipModel.Content.Timer)
                        .startTimeMs
                )
                .isEqualTo(1234)

            mediaProjectionRepo.mediaProjectionState.value = MediaProjectionState.NotProjecting
@@ -415,7 +424,11 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
                )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active::class.java)
            assertThat((latest as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(
                    ((latest as OngoingActivityChipModel.Active).content
                            as OngoingActivityChipModel.Content.Timer)
                        .startTimeMs
                )
                .isEqualTo(5678)
        }

@@ -438,7 +451,8 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {
                    )
                )

            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat((latest as OngoingActivityChipModel.Active).content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)

            // Later, set MediaProjection to also have information
            systemClock.setElapsedRealtime(5678)
@@ -447,7 +461,11 @@ class CastToOtherDeviceChipViewModelTest : SysuiTestCase() {

            // Verify the new time is used
            assertThat(latest).isInstanceOf(OngoingActivityChipModel.Active::class.java)
            assertThat((latest as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(
                    ((latest as OngoingActivityChipModel.Active).content
                            as OngoingActivityChipModel.Content.Timer)
                        .startTimeMs
                )
                .isEqualTo(5678)
        }

+45 −37
Original line number Diff line number Diff line
@@ -481,8 +481,9 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0]).isInstanceOf(OngoingActivityChipModel.Active.Text::class.java)
            assertThat((latest!![0] as OngoingActivityChipModel.Active.Text).text)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.Text::class.java)
            assertThat((latest!![0].content as OngoingActivityChipModel.Content.Text).text)
                .isEqualTo("Arrived")
        }

@@ -532,8 +533,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
        }

    @Test
@@ -560,8 +561,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
        }

    @Test
@@ -588,8 +589,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)
        }

    @Test
@@ -616,8 +617,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)
        }

    @Test
@@ -647,8 +648,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)
            assertThat(latest!![0].isHidden).isFalse()

            activityManagerRepository.fake.setIsAppVisible(uid = uid, isAppVisible = true)
@@ -680,8 +681,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
        }

    @Test
@@ -708,8 +709,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
        }

    @Test
@@ -736,8 +737,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
        }

    // Not necessarily the behavior we *want* to have, but it's the currently implemented behavior.
@@ -765,14 +766,14 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)

            fakeSystemClock.advanceTime(5.minutes.inWholeMilliseconds)

            assertThat(latest).hasSize(1)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)
        }

    @Test
@@ -805,10 +806,13 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0]).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest!![0] as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest!![0].content as OngoingActivityChipModel.Content.Timer).startTimeMs)
                .isEqualTo(whenElapsed)
            assertThat((latest!![0] as OngoingActivityChipModel.Active.Timer).isEventInFuture)
            assertThat(
                    (latest!![0].content as OngoingActivityChipModel.Content.Timer).isEventInFuture
                )
                .isFalse()
        }

@@ -846,7 +850,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0]).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat(latest!![0].isHidden).isTrue()

            activityManagerRepository.fake.setIsAppVisible(uid, isAppVisible = false)
@@ -884,10 +889,13 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            assertThat(latest).hasSize(1)
            assertThat(latest!![0]).isInstanceOf(OngoingActivityChipModel.Active.Timer::class.java)
            assertThat((latest!![0] as OngoingActivityChipModel.Active.Timer).startTimeMs)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.Timer::class.java)
            assertThat((latest!![0].content as OngoingActivityChipModel.Content.Timer).startTimeMs)
                .isEqualTo(whenElapsed)
            assertThat((latest!![0] as OngoingActivityChipModel.Active.Timer).isEventInFuture)
            assertThat(
                    (latest!![0].content as OngoingActivityChipModel.Content.Timer).isEventInFuture
                )
                .isTrue()
        }

@@ -952,8 +960,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            kosmos.headsUpNotificationRepository.setNotifications(emptyList())

            // THEN the chip shows the time
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)
        }

    @Test
@@ -989,8 +997,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            // THEN the chip keeps showing time
            // (In real life the chip won't show at all, but that's handled in a different part of
            // the system. What we know here is that the chip shouldn't shrink to icon only.)
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)
        }

    @Test
@@ -1036,8 +1044,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {

            // THEN the "notif" chip keeps showing time
            val chip = latest!![0]
            assertThat(chip)
                .isInstanceOf(OngoingActivityChipModel.Active.ShortTimeDelta::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.ShortTimeDelta::class.java)
            assertIsNotifChip(chip, context, icon, "notif")
        }

@@ -1072,8 +1080,8 @@ class NotifChipsViewModelTest : SysuiTestCase() {
            )

            // THEN the chip shrinks to icon only
            assertThat(latest!![0])
                .isInstanceOf(OngoingActivityChipModel.Active.IconOnly::class.java)
            assertThat(latest!![0].content)
                .isInstanceOf(OngoingActivityChipModel.Content.IconOnly::class.java)
        }

    @Test
+41 −10

File changed.

Preview size limit exceeded, changes collapsed.

+16 −5

File changed.

Preview size limit exceeded, changes collapsed.

Loading