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

Commit ae86ae27 authored by Kenneth Ford's avatar Kenneth Ford
Browse files

Migrate SystemUI Fold Utils to updated FoldStateListener

Fixes test failures by migrating SystemUI Fold Utils to the
updated DeviceState based FoldStateListener API.

Flag: NA
Bug: 325379002
Bug: 293636629
Test: atest UnfoldLatencyTrackerTest
Change-Id: I5d1616477d48c308e6fc04b992e9882710d4dea7
parent 6ad79142
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -246,7 +246,7 @@ class FoldAodAnimationControllerTest : SysuiTestCase() {

    private fun sendFoldEvent(folded: Boolean) {
        val state = if (folded) deviceStates.folded else deviceStates.unfolded
        foldStateListenerCaptor.value.onStateChanged(state)
        foldStateListenerCaptor.value.onDeviceStateChanged(state)
    }

    companion object {
+1 −1
Original line number Diff line number Diff line
@@ -174,7 +174,7 @@ class UnfoldLatencyTrackerTest : SysuiTestCase() {

    private fun sendFoldEvent(folded: Boolean) {
        val state = if (folded) deviceStates.folded else deviceStates.unfolded
        foldStateListenerCaptor.value.onStateChanged(state)
        foldStateListenerCaptor.value.onDeviceStateChanged(state)
    }

    private fun sendScreenTurnedOnEvent() {
+11 −3
Original line number Diff line number Diff line
@@ -17,21 +17,29 @@
package com.android.systemui.unfold.util

import android.content.Context
import android.hardware.devicestate.DeviceState
import org.junit.Assume.assumeTrue

object FoldableTestUtils {

    /** Finds device state for folded and unfolded. */
    fun findDeviceStates(context: Context): FoldableDeviceStates {
        // TODO(b/325474477): Migrate clients to updated DeviceStateManager API's
        val foldedDeviceStates: IntArray = context.resources.getIntArray(
            com.android.internal.R.array.config_foldedDeviceStates)
        assumeTrue("Test should be launched on a foldable device",
            foldedDeviceStates.isNotEmpty())

        val folded = foldedDeviceStates.maxOrNull()!!
        val unfolded = folded + 1
        val folded =
            DeviceState(foldedDeviceStates.maxOrNull()!! /* identifier */,
                "" /* name */,
                emptySet() /* properties */)
        val unfolded =
            DeviceState(folded.identifier + 1 /* identifier */,
                "" /* name */,
                emptySet() /* properties */)
        return FoldableDeviceStates(folded = folded, unfolded = unfolded)
    }
}

data class FoldableDeviceStates(val folded: Int, val unfolded: Int)
 No newline at end of file
data class FoldableDeviceStates(val folded: DeviceState, val unfolded: DeviceState)
 No newline at end of file