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

Commit cff22570 authored by Evan Laird's avatar Evan Laird Committed by Android (Google) Code Review
Browse files

Merge changes Ifeddf8c8,I265d573d into main

* changes:
  [Tether] flip instant_tether for teamfood
  [Tether] Prefer mergedCarrierEntry() over connectedEntry()
parents ff360676 a6c70481
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -419,7 +419,7 @@ object Flags {
        releasedFlag("incompatible_charging_battery_icon")

    // TODO(b/293585143): Tracking Bug
    val INSTANT_TETHER = unreleasedFlag("instant_tether")
    val INSTANT_TETHER = unreleasedFlag("instant_tether", teamfood = true)

    // TODO(b/294588085): Tracking Bug
    val WIFI_SECONDARY_NETWORKS = releasedFlag("wifi_secondary_networks")
+16 −1
Original line number Diff line number Diff line
@@ -104,7 +104,7 @@ constructor(
                val callback =
                    object : WifiPickerTracker.WifiPickerTrackerCallback {
                        override fun onWifiEntriesChanged() {
                            val connectedEntry = wifiPickerTracker?.connectedWifiEntry
                            val connectedEntry = wifiPickerTracker.mergedOrPrimaryConnection
                            logOnWifiEntriesChanged(connectedEntry)

                            val secondaryNetworks =
@@ -216,6 +216,21 @@ constructor(
            )
            .stateIn(scope, SharingStarted.Eagerly, emptyList())

    /**
     * [WifiPickerTracker.getConnectedWifiEntry] stores a [MergedCarrierEntry] separately from the
     * [WifiEntry] for the primary connection. Therefore, we have to prefer the carrier-merged entry
     * if it exists, falling back on the connected entry if null
     */
    private val WifiPickerTracker?.mergedOrPrimaryConnection: WifiEntry?
        get() {
            val mergedEntry: MergedCarrierEntry? = this?.mergedCarrierEntry
            return if (mergedEntry != null && mergedEntry.isDefaultNetwork) {
                mergedEntry
            } else {
                this?.connectedWifiEntry
            }
        }

    /**
     * Converts WifiTrackerLib's [WifiEntry] into our internal model only if the entry is the
     * primary network. Returns an inactive network if it's not primary.
+71 −14
Original line number Diff line number Diff line
@@ -201,11 +201,11 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
        testScope.runTest {
            val latest by collectLastValue(underTest.isWifiDefault)

            val wifiEntry =
            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isDefaultNetwork).thenReturn(true)
                }
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            getCallback().onWifiEntriesChanged()

            assertThat(latest).isTrue()
@@ -229,11 +229,11 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
        testScope.runTest {
            val latest by collectLastValue(underTest.isWifiDefault)

            val wifiEntry =
            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isDefaultNetwork).thenReturn(false)
                }
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            getCallback().onWifiEntriesChanged()

            assertThat(latest).isFalse()
@@ -526,13 +526,14 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
        testScope.runTest {
            val latest by collectLastValue(underTest.wifiNetwork)

            val wifiEntry =
            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.level).thenReturn(3)
                    whenever(this.subscriptionId).thenReturn(567)
                    whenever(this.isDefaultNetwork).thenReturn(true)
                }
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            getCallback().onWifiEntriesChanged()

            assertThat(latest is WifiNetworkModel.CarrierMerged).isTrue()
@@ -546,11 +547,12 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
        testScope.runTest {
            val latest by collectLastValue(underTest.wifiNetwork)

            val wifiEntry =
            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.isDefaultNetwork).thenReturn(true)
                }
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            whenever(wifiManager.maxSignalLevel).thenReturn(5)

            getCallback().onWifiEntriesChanged()
@@ -566,12 +568,13 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
        testScope.runTest {
            val latest by collectLastValue(underTest.wifiNetwork)

            val wifiEntry =
            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.subscriptionId).thenReturn(INVALID_SUBSCRIPTION_ID)
                    whenever(this.isDefaultNetwork).thenReturn(true)
                }
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)

            getCallback().onWifiEntriesChanged()

@@ -628,11 +631,12 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
        testScope.runTest {
            val latest by collectLastValue(underTest.wifiNetwork)

            val wifiEntry =
            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(false)
                }
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(null)
            getCallback().onWifiEntriesChanged()

            assertThat(latest).isEqualTo(WifiNetworkModel.Inactive)
@@ -717,12 +721,14 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
        testScope.runTest {
            val latest by collectLastValue(underTest.wifiNetwork)

            val wifiEntry =
            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.level).thenReturn(3)
                    whenever(this.isDefaultNetwork).thenReturn(true)
                }
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(null)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            getCallback().onWifiEntriesChanged()

            assertThat(latest is WifiNetworkModel.CarrierMerged).isTrue()
@@ -730,6 +736,7 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {

            // WHEN we lose our current network
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(null)
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(null)
            getCallback().onWifiEntriesChanged()

            // THEN we update to no network
@@ -766,6 +773,56 @@ class WifiRepositoryViaTrackerLibTest : SysuiTestCase() {
            assertThat(latest2Active.ssid).isEqualTo(TITLE)
        }

    @Test
    fun wifiNetwork_carrierMerged_default_usesCarrierMergedInfo() =
        testScope.runTest {
            val latest by collectLastValue(underTest.wifiNetwork)

            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.level).thenReturn(3)
                    whenever(this.isDefaultNetwork).thenReturn(true)
                }
            val wifiEntry =
                mock<WifiEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.level).thenReturn(1)
                    whenever(this.title).thenReturn(TITLE)
                }
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)

            getCallback().onWifiEntriesChanged()

            assertThat(latest is WifiNetworkModel.CarrierMerged).isTrue()
        }

    @Test
    fun wifiNetwork_carrierMerged_notDefault_usesConnectedInfo() =
        testScope.runTest {
            val latest by collectLastValue(underTest.wifiNetwork)

            val mergedEntry =
                mock<MergedCarrierEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.level).thenReturn(3)
                    whenever(this.isDefaultNetwork).thenReturn(false)
                }
            val wifiEntry =
                mock<WifiEntry>().apply {
                    whenever(this.isPrimaryNetwork).thenReturn(true)
                    whenever(this.level).thenReturn(1)
                    whenever(this.title).thenReturn(TITLE)
                }
            whenever(wifiPickerTracker.mergedCarrierEntry).thenReturn(mergedEntry)
            whenever(wifiPickerTracker.connectedWifiEntry).thenReturn(wifiEntry)

            getCallback().onWifiEntriesChanged()

            assertThat(latest is WifiNetworkModel.Active).isTrue()
        }

    @Test
    fun secondaryNetworks_activeEntriesEmpty_isEmpty() =
        testScope.runTest {