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

Commit 652fede8 authored by Caitlin Shkuratov's avatar Caitlin Shkuratov Committed by Android (Google) Code Review
Browse files

Merge "[Notif] Add real Kosmos implementations for HeadsUpManager + related" into main

parents 48c6800a e0760264
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -48,7 +48,7 @@ import com.android.systemui.statusbar.notification.domain.interactor.SeenNotific
import com.android.systemui.statusbar.notification.domain.interactor.lockScreenShowOnlyUnseenNotificationsSetting
import com.android.systemui.statusbar.notification.domain.interactor.seenNotificationsInteractor
import com.android.systemui.statusbar.notification.headsup.OnHeadsUpChangedListener
import com.android.systemui.statusbar.notification.headsup.headsUpManager
import com.android.systemui.statusbar.notification.headsup.mockHeadsUpManager
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
import com.android.systemui.testKosmos
import com.android.systemui.util.settings.FakeSettings
@@ -625,7 +625,7 @@ class OriginalUnseenKeyguardCoordinatorTest(flags: FlagsParameterization) : Sysu
        val keyguardCoordinator =
            OriginalUnseenKeyguardCoordinator(
                dumpManager = kosmos.dumpManager,
                headsUpManager = kosmos.headsUpManager,
                headsUpManager = kosmos.mockHeadsUpManager,
                keyguardRepository = kosmos.keyguardRepository,
                keyguardTransitionInteractor = kosmos.keyguardTransitionInteractor,
                logger = KeyguardCoordinatorLogger(logcatLogBuffer()),
@@ -663,7 +663,8 @@ class OriginalUnseenKeyguardCoordinatorTest(flags: FlagsParameterization) : Sysu

        val onHeadsUpChangedListener: OnHeadsUpChangedListener
            get() =
                argumentCaptor { verify(kosmos.headsUpManager).addListener(capture()) }.lastValue
                argumentCaptor { verify(kosmos.mockHeadsUpManager).addListener(capture()) }
                    .lastValue
    }

    companion object {
+2 −2
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@ import com.android.systemui.statusbar.notification.collection.NotificationEntry
import com.android.systemui.statusbar.notification.domain.interactor.HeadsUpNotificationIconInteractor
import com.android.systemui.statusbar.notification.domain.interactor.headsUpNotificationIconInteractor
import com.android.systemui.statusbar.notification.headsup.PinnedStatus
import com.android.systemui.statusbar.notification.headsup.headsUpManager
import com.android.systemui.statusbar.notification.headsup.mockHeadsUpManager
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow
import com.android.systemui.statusbar.notification.row.NotificationTestHelper
import com.android.systemui.statusbar.notification.row.shared.AsyncGroupHeaderViewInflation
@@ -75,7 +75,7 @@ class HeadsUpAppearanceControllerTest : SysuiTestCase() {
    private val keyguardStateController = kosmos.keyguardStateController
    private val commandQueue = kosmos.commandQueue
    private val notificationRoundnessManager = mock<NotificationRoundnessManager>()
    private var headsUpManager = kosmos.headsUpManager
    private var headsUpManager = kosmos.mockHeadsUpManager

    private lateinit var testHelper: NotificationTestHelper
    private lateinit var row: ExpandableNotificationRow
+2 −2
Original line number Diff line number Diff line
@@ -65,7 +65,7 @@ import com.android.systemui.statusbar.notification.AssistantFeedbackController
import com.android.systemui.statusbar.notification.NotificationActivityStarter
import com.android.systemui.statusbar.notification.collection.provider.HighPriorityProvider
import com.android.systemui.statusbar.notification.domain.interactor.activeNotificationsInteractor
import com.android.systemui.statusbar.notification.headsup.headsUpManager
import com.android.systemui.statusbar.notification.headsup.mockHeadsUpManager
import com.android.systemui.statusbar.notification.people.PeopleNotificationIdentifier
import com.android.systemui.statusbar.notification.stack.NotificationListContainer
import com.android.systemui.statusbar.notificationLockscreenUserManager
@@ -128,7 +128,7 @@ class NotificationGutsManagerWithScenesTest : SysuiTestCase() {
    private val shadeController = kosmos.shadeControllerSceneImpl
    private val notificationLockscreenUserManager = kosmos.notificationLockscreenUserManager
    private val statusBarStateController = kosmos.statusBarStateController
    private val headsUpManager = kosmos.headsUpManager
    private val headsUpManager = kosmos.mockHeadsUpManager
    private val activityStarter = kosmos.activityStarter
    private val userManager = kosmos.userManager
    private val activeNotificationsInteractor = kosmos.activeNotificationsInteractor
+29 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2024 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.systemui.statusbar.notification.headsup

import com.android.internal.logging.uiEventLoggerFake
import com.android.systemui.dump.dumpManager
import com.android.systemui.kosmos.Kosmos
import com.android.systemui.kosmos.Kosmos.Fixture
import com.android.systemui.util.mockito.mock

var Kosmos.mockAvalancheController by Fixture { mock<AvalancheController>() }

val Kosmos.avalancheController by Fixture {
    AvalancheController(dumpManager, uiEventLoggerFake, headsUpManagerLogger, bgHandler = mock())
}
+37 −1
Original line number Diff line number Diff line
@@ -16,8 +16,44 @@

package com.android.systemui.statusbar.notification.headsup

import android.content.applicationContext
import android.view.accessibility.accessibilityManagerWrapper
import com.android.internal.logging.uiEventLoggerFake
import com.android.systemui.concurrency.fakeExecutor
import com.android.systemui.kosmos.Kosmos
import com.android.systemui.kosmos.Kosmos.Fixture
import com.android.systemui.kosmos.testScope
import com.android.systemui.plugins.statusbar.statusBarStateController
import com.android.systemui.shade.domain.interactor.shadeInteractor
import com.android.systemui.statusbar.notification.collection.provider.visualStabilityProvider
import com.android.systemui.statusbar.notification.collection.render.GroupMembershipManager
import com.android.systemui.statusbar.phone.keyguardBypassController
import com.android.systemui.statusbar.policy.configurationController
import com.android.systemui.util.concurrency.mockExecutorHandler
import com.android.systemui.util.kotlin.JavaAdapter
import com.android.systemui.util.mockito.mock
import com.android.systemui.util.settings.fakeGlobalSettings
import com.android.systemui.util.time.fakeSystemClock

var Kosmos.headsUpManager by Fixture { mock<HeadsUpManager>() }
var Kosmos.mockHeadsUpManager by Fixture { mock<HeadsUpManager>() }

var Kosmos.headsUpManager: HeadsUpManager by Fixture {
    HeadsUpManagerImpl(
        applicationContext,
        headsUpManagerLogger,
        statusBarStateController,
        keyguardBypassController,
        mock<GroupMembershipManager>(),
        visualStabilityProvider,
        configurationController,
        mockExecutorHandler(fakeExecutor),
        fakeGlobalSettings,
        fakeSystemClock,
        fakeExecutor,
        accessibilityManagerWrapper,
        uiEventLoggerFake,
        JavaAdapter(testScope.backgroundScope),
        shadeInteractor,
        avalancheController,
    )
}
Loading