Merge "Use RunListener to Clear inline mocks at the end of each test class." into main

This commit is contained in:
Anushree Ganjam
2025-01-16 13:28:04 -08:00
committed by Android (Google) Code Review
4 changed files with 83 additions and 33 deletions
@@ -8,6 +8,8 @@ import com.android.launcher3.util.DisplayController.CHANGE_DENSITY
import com.android.launcher3.util.DisplayController.CHANGE_NAVIGATION_MODE
import com.android.launcher3.util.DisplayController.CHANGE_ROTATION
import com.android.launcher3.util.DisplayController.Info
import com.android.launcher3.util.Executors.MAIN_EXECUTOR
import com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR
import com.android.launcher3.util.NavigationMode
import com.android.quickstep.util.GestureExclusionManager
import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY
@@ -22,6 +24,7 @@ import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_QUICK_SE
import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING
import com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_TOUCHPAD_GESTURES_DISABLED
import com.google.common.truth.Truth.assertThat
import org.junit.After
import org.junit.Before
import org.junit.Test
import org.junit.runner.RunWith
@@ -50,6 +53,13 @@ class RecentsAnimationDeviceStateTest {
underTest = RecentsAnimationDeviceState(context, exclusionManager)
}
@After
fun tearDown() {
underTest.close()
UI_HELPER_EXECUTOR.submit {}.get()
MAIN_EXECUTOR.submit {}.get()
}
@Test
fun registerExclusionListener_success() {
underTest.registerExclusionListener()
@@ -121,8 +131,8 @@ class RecentsAnimationDeviceStateTest {
@Test
fun trackpadGesturesNotAllowedForSelectedStates() {
val disablingStates = GESTURE_DISABLING_SYSUI_STATES +
SYSUI_STATE_TOUCHPAD_GESTURES_DISABLED
val disablingStates =
GESTURE_DISABLING_SYSUI_STATES + SYSUI_STATE_TOUCHPAD_GESTURES_DISABLED
allSysUiStates().forEach { state ->
val canStartGesture = !disablingStates.contains(state)
@@ -133,13 +143,13 @@ class RecentsAnimationDeviceStateTest {
@Test
fun trackpadGesturesNotAllowedIfHomeAndOverviewIsDisabled() {
val stateToExpectedResult = mapOf(
SYSUI_STATE_HOME_DISABLED to true,
SYSUI_STATE_OVERVIEW_DISABLED to true,
DEFAULT_STATE
.enable(SYSUI_STATE_OVERVIEW_DISABLED)
.enable(SYSUI_STATE_HOME_DISABLED) to false
)
val stateToExpectedResult =
mapOf(
SYSUI_STATE_HOME_DISABLED to true,
SYSUI_STATE_OVERVIEW_DISABLED to true,
DEFAULT_STATE.enable(SYSUI_STATE_OVERVIEW_DISABLED)
.enable(SYSUI_STATE_HOME_DISABLED) to false,
)
stateToExpectedResult.forEach { (state, allowed) ->
underTest.setSystemUiFlags(state)
@@ -160,22 +170,19 @@ class RecentsAnimationDeviceStateTest {
@Test
fun systemGesturesNotAllowedWhenGestureStateDisabledAndNavBarVisible() {
val stateToExpectedResult = mapOf(
DEFAULT_STATE
.enable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.disable(SYSUI_STATE_NAV_BAR_HIDDEN) to true,
DEFAULT_STATE
.enable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.enable(SYSUI_STATE_NAV_BAR_HIDDEN) to true,
DEFAULT_STATE
.disable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.disable(SYSUI_STATE_NAV_BAR_HIDDEN) to true,
DEFAULT_STATE
.disable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.enable(SYSUI_STATE_NAV_BAR_HIDDEN) to false,
)
val stateToExpectedResult =
mapOf(
DEFAULT_STATE.enable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.disable(SYSUI_STATE_NAV_BAR_HIDDEN) to true,
DEFAULT_STATE.enable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.enable(SYSUI_STATE_NAV_BAR_HIDDEN) to true,
DEFAULT_STATE.disable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.disable(SYSUI_STATE_NAV_BAR_HIDDEN) to true,
DEFAULT_STATE.disable(SYSUI_STATE_ALLOW_GESTURE_IGNORING_BAR_VISIBILITY)
.enable(SYSUI_STATE_NAV_BAR_HIDDEN) to false,
)
stateToExpectedResult.forEach {(state, gestureAllowed) ->
stateToExpectedResult.forEach { (state, gestureAllowed) ->
underTest.setSystemUiFlags(state)
assertThat(underTest.canStartSystemGesture()).isEqualTo(gestureAllowed)
}
@@ -187,14 +194,15 @@ class RecentsAnimationDeviceStateTest {
}
companion object {
private val GESTURE_DISABLING_SYSUI_STATES = listOf(
SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED,
SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING,
SYSUI_STATE_QUICK_SETTINGS_EXPANDED,
SYSUI_STATE_MAGNIFICATION_OVERLAP,
SYSUI_STATE_DEVICE_DREAMING,
SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION,
)
private val GESTURE_DISABLING_SYSUI_STATES =
listOf(
SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED,
SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING,
SYSUI_STATE_QUICK_SETTINGS_EXPANDED,
SYSUI_STATE_MAGNIFICATION_OVERLAP,
SYSUI_STATE_DEVICE_DREAMING,
SYSUI_STATE_DISABLE_GESTURE_SPLIT_INVOCATION,
)
private const val SYSUI_STATES_COUNT = 33
private const val DEFAULT_STATE = 0L
}