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

Commit 7dce3b8e authored by Behnam Heydarshahi's avatar Behnam Heydarshahi
Browse files

improve qs tile directory structure

Bug: 398175054
Flag: EXEMPT moving files only
Test: manual. make sure systemui compiles and tiles show up.
Change-Id: Iead6bf90793de5c726ee0e5545428d54267b83c7
parent 0df428e7
Loading
Loading
Loading
Loading
+5 −10
Original line number Diff line number Diff line
@@ -32,12 +32,12 @@ import com.android.systemui.qs.pipeline.data.repository.FakeInstalledTilesCompon
import com.android.systemui.qs.pipeline.data.repository.fakeInstalledTilesRepository
import com.android.systemui.qs.pipeline.shared.TileSpec
import com.android.systemui.qs.shared.model.TileCategory
import com.android.systemui.qs.tiles.base.shared.model.QSTileConfig
import com.android.systemui.qs.tiles.base.shared.model.fakeQSTileConfigProvider
import com.android.systemui.qs.tiles.base.shared.model.qSTileConfigProvider
import com.android.systemui.qs.tiles.impl.battery.qsBatterySaverTileConfig
import com.android.systemui.qs.tiles.impl.flashlight.qsFlashlightTileConfig
import com.android.systemui.qs.tiles.impl.internet.qsInternetTileConfig
import com.android.systemui.qs.tiles.viewmodel.QSTileConfig
import com.android.systemui.qs.tiles.viewmodel.fakeQSTileConfigProvider
import com.android.systemui.qs.tiles.viewmodel.qSTileConfigProvider
import com.android.systemui.settings.userTracker
import com.android.systemui.testKosmos
import com.google.common.truth.Truth.assertThat
@@ -58,12 +58,7 @@ class EditTilesListInteractorTest : SysuiTestCase() {
    private val batteryTileConfig = kosmos.qsBatterySaverTileConfig

    private val serviceInfo =
        FakeInstalledTilesComponentRepository.ServiceInfo(
            component,
            tileName,
            icon,
            appName,
        )
        FakeInstalledTilesComponentRepository.ServiceInfo(component, tileName, icon, appName)

    private val underTest =
        with(kosmos) {
@@ -79,7 +74,7 @@ class EditTilesListInteractorTest : SysuiTestCase() {
        with(kosmos) {
            fakeInstalledTilesRepository.setInstalledServicesForUser(
                userTracker.userId,
                listOf(serviceInfo)
                listOf(serviceInfo),
            )

            with(fakeQSTileConfigProvider) {
+45 −34
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ import com.android.systemui.SysuiTestCase
import com.android.systemui.coroutines.collectLastValue
import com.android.systemui.kosmos.testScope
import com.android.systemui.qs.pipeline.shared.TileSpec
import com.android.systemui.qs.tiles.base.interactor.QSTileAvailabilityInteractor
import com.android.systemui.qs.tiles.base.domain.interactor.QSTileAvailabilityInteractor
import com.android.systemui.statusbar.connectivity.ConnectivityModule.Companion.AIRPLANE_MODE_TILE_SPEC
import com.android.systemui.statusbar.connectivity.ConnectivityModule.Companion.HOTSPOT_TILE_SPEC
import com.android.systemui.statusbar.policy.PolicyModule.Companion.WORK_MODE_TILE_SPEC
@@ -38,28 +38,36 @@ import org.junit.runner.RunWith
@RunWith(AndroidJUnit4::class)
@SmallTest
class NewTilesAvailabilityInteractorTest : SysuiTestCase() {
    private val kosmos = testKosmos().apply {
    private val kosmos =
        testKosmos().apply {
            tileAvailabilityInteractorsMap = buildMap {
                put(AIRPLANE_MODE_TILE_SPEC, QSTileAvailabilityInteractor.AlwaysAvailableInteractor)
            put(WORK_MODE_TILE_SPEC, FakeTileAvailabilityInteractor(
                    mapOf(
                       fakeUserRepository.getSelectedUserInfo().id to flowOf(true),
                    ).withDefault { flowOf(false) }
            ))
            put(HOTSPOT_TILE_SPEC, FakeTileAvailabilityInteractor(
                put(
                    WORK_MODE_TILE_SPEC,
                    FakeTileAvailabilityInteractor(
                        mapOf(fakeUserRepository.getSelectedUserInfo().id to flowOf(true))
                            .withDefault { flowOf(false) }
                    ),
                )
                put(
                    HOTSPOT_TILE_SPEC,
                    FakeTileAvailabilityInteractor(
                        emptyMap<Int, Flow<Boolean>>().withDefault { flowOf(false) }
            ))
                    ),
                )
            }
        }

    private val underTest by lazy { kosmos.newTilesAvailabilityInteractor }

    @Test
    fun defaultUser_getAvailabilityFlow() = with(kosmos) {
    fun defaultUser_getAvailabilityFlow() =
        with(kosmos) {
            testScope.runTest {
                val availability by collectLastValue(underTest.newTilesAvailable)

            assertThat(availability).isEqualTo(
                assertThat(availability)
                    .isEqualTo(
                        mapOf(
                            TileSpec.create(AIRPLANE_MODE_TILE_SPEC) to true,
                            TileSpec.create(WORK_MODE_TILE_SPEC) to true,
@@ -70,12 +78,14 @@ class NewTilesAvailabilityInteractorTest : SysuiTestCase() {
        }

    @Test
    fun getAvailabilityFlow_userChange() = with(kosmos) {
    fun getAvailabilityFlow_userChange() =
        with(kosmos) {
            testScope.runTest {
                val availability by collectLastValue(underTest.newTilesAvailable)
                fakeUserRepository.asMainUser()

            assertThat(availability).isEqualTo(
                assertThat(availability)
                    .isEqualTo(
                        mapOf(
                            TileSpec.create(AIRPLANE_MODE_TILE_SPEC) to true,
                            TileSpec.create(WORK_MODE_TILE_SPEC) to false,
@@ -86,7 +96,8 @@ class NewTilesAvailabilityInteractorTest : SysuiTestCase() {
        }

    @Test
    fun noAvailabilityInteractor_emptyMap() = with(kosmos) {
    fun noAvailabilityInteractor_emptyMap() =
        with(kosmos) {
            testScope.runTest {
                tileAvailabilityInteractorsMap = emptyMap()

+1 −1
Original line number Diff line number Diff line
@@ -28,7 +28,7 @@ import com.android.systemui.qs.FakeQSFactory
import com.android.systemui.qs.FakeQSTile
import com.android.systemui.qs.pipeline.shared.TileSpec
import com.android.systemui.qs.qsTileFactory
import com.android.systemui.qs.tiles.base.interactor.QSTileAvailabilityInteractor
import com.android.systemui.qs.tiles.base.domain.interactor.QSTileAvailabilityInteractor
import com.android.systemui.statusbar.connectivity.ConnectivityModule.Companion.AIRPLANE_MODE_TILE_SPEC
import com.android.systemui.statusbar.connectivity.ConnectivityModule.Companion.HOTSPOT_TILE_SPEC
import com.android.systemui.statusbar.connectivity.ConnectivityModule.Companion.INTERNET_TILE_SPEC
+3 −3
Original line number Diff line number Diff line
@@ -49,6 +49,9 @@ import com.android.systemui.qs.pipeline.shared.TileSpec
import com.android.systemui.qs.pipeline.shared.metricSpec
import com.android.systemui.qs.qsTileFactory
import com.android.systemui.qs.shared.model.TileCategory
import com.android.systemui.qs.tiles.base.shared.model.QSTileConfig
import com.android.systemui.qs.tiles.base.shared.model.fakeQSTileConfigProvider
import com.android.systemui.qs.tiles.base.shared.model.qSTileConfigProvider
import com.android.systemui.qs.tiles.impl.airplane.qsAirplaneModeTileConfig
import com.android.systemui.qs.tiles.impl.alarm.qsAlarmTileConfig
import com.android.systemui.qs.tiles.impl.battery.qsBatterySaverTileConfig
@@ -56,9 +59,6 @@ import com.android.systemui.qs.tiles.impl.flashlight.qsFlashlightTileConfig
import com.android.systemui.qs.tiles.impl.internet.qsInternetTileConfig
import com.android.systemui.qs.tiles.impl.sensorprivacy.qsCameraSensorPrivacyToggleTileConfig
import com.android.systemui.qs.tiles.impl.sensorprivacy.qsMicrophoneSensorPrivacyToggleTileConfig
import com.android.systemui.qs.tiles.viewmodel.QSTileConfig
import com.android.systemui.qs.tiles.viewmodel.fakeQSTileConfigProvider
import com.android.systemui.qs.tiles.viewmodel.qSTileConfigProvider
import com.android.systemui.settings.userTracker
import com.android.systemui.testKosmos
import com.google.common.truth.Truth.assertThat
+1 −1
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ import com.android.systemui.qs.pipeline.shared.TileSpec
import com.android.systemui.qs.pipeline.shared.logging.QSPipelineLogger
import com.android.systemui.qs.pipeline.shared.logging.qsLogger
import com.android.systemui.qs.qsTileFactory
import com.android.systemui.qs.tiles.di.newQSTileFactory
import com.android.systemui.qs.tiles.base.ui.model.newQSTileFactory
import com.android.systemui.qs.toProto
import com.android.systemui.settings.fakeUserTracker
import com.android.systemui.testKosmos
Loading