summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
author Yuichiro Hanada <yhanada@google.com> 2024-11-01 12:43:29 +0900
committer Yuichiro Hanada <yhanada@google.com> 2024-11-04 23:39:40 +0000
commite24a9a85e382d2b23490de48261c61b527a58edb (patch)
treea45814789ff1e7793664b99bcefb3270a531d5f6 /tests
parent9f7247f5de71fbb6ffccb366faa45895afb6d502 (diff)
Add a functional test for minimizing a window
Flag: com.android.window.flags.enable_minimize_button Bug: 373973157 Test: atest PlatformScenarioTests:com.android.wm.shell.functional.MinimizeAppWindowTest Change-Id: I55b8681b4ce307f7669521085ecdca1fb711acd7
Diffstat (limited to 'tests')
-rw-r--r--tests/FlickerTests/test-apps/app-helpers/src/com/android/server/wm/flicker/helpers/DesktopModeAppHelper.kt19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/FlickerTests/test-apps/app-helpers/src/com/android/server/wm/flicker/helpers/DesktopModeAppHelper.kt b/tests/FlickerTests/test-apps/app-helpers/src/com/android/server/wm/flicker/helpers/DesktopModeAppHelper.kt
index 1c6bd1114c1c..332b9b832037 100644
--- a/tests/FlickerTests/test-apps/app-helpers/src/com/android/server/wm/flicker/helpers/DesktopModeAppHelper.kt
+++ b/tests/FlickerTests/test-apps/app-helpers/src/com/android/server/wm/flicker/helpers/DesktopModeAppHelper.kt
@@ -132,6 +132,24 @@ open class DesktopModeAppHelper(private val innerHelper: IStandardAppHelper) :
wmHelper.StateSyncBuilder().withAppTransitionIdle().waitForAndVerify()
}
+ private fun getMinimizeButtonForTheApp(caption: UiObject2?): UiObject2 {
+ return caption
+ ?.children
+ ?.find { it.resourceName.endsWith(MINIMIZE_BUTTON_VIEW) }
+ ?: error("Unable to find resource $MINIMIZE_BUTTON_VIEW\n")
+ }
+
+ fun minimizeDesktopApp(wmHelper: WindowManagerStateHelper, device: UiDevice) {
+ val caption = getCaptionForTheApp(wmHelper, device)
+ val minimizeButton = getMinimizeButtonForTheApp(caption)
+ minimizeButton.click()
+ wmHelper
+ .StateSyncBuilder()
+ .withAppTransitionIdle()
+ .withWindowSurfaceDisappeared(innerHelper)
+ .waitForAndVerify()
+ }
+
/** Open maximize menu and click snap resize button on the app header for the given app. */
fun snapResizeDesktopApp(
wmHelper: WindowManagerStateHelper,
@@ -400,6 +418,7 @@ open class DesktopModeAppHelper(private val innerHelper: IStandardAppHelper) :
const val DESKTOP_MODE_BUTTON: String = "desktop_button"
const val SNAP_LEFT_BUTTON: String = "maximize_menu_snap_left_button"
const val SNAP_RIGHT_BUTTON: String = "maximize_menu_snap_right_button"
+ const val MINIMIZE_BUTTON_VIEW: String = "minimize_window"
val caption: BySelector
get() = By.res(SYSTEMUI_PACKAGE, CAPTION)
}