Merge "Adding assertions to ReOpenImeWindowTest"
This commit is contained in:
committed by
Android (Google) Code Review
commit
ec66eb30d0
@@ -80,12 +80,23 @@ fun WmAssertion.wallpaperWindowBecomesVisible(
|
||||
}
|
||||
}
|
||||
|
||||
fun WmAssertion.windowAlwaysVisible(
|
||||
fun WmAssertion.wallpaperWindowBecomesInvisible(
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
) {
|
||||
all("wallpaperWindowBecomesInvisible", bugId, enabled) {
|
||||
this.showsBelowAppWindow("Wallpaper")
|
||||
.then()
|
||||
.hidesBelowAppWindow("Wallpaper")
|
||||
}
|
||||
}
|
||||
|
||||
fun WmAssertion.appWindowAlwaysVisibleOnTop(
|
||||
packageName: String,
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
) {
|
||||
all("windowAlwaysVisible", bugId, enabled) {
|
||||
all("appWindowAlwaysVisibleOnTop", bugId, enabled) {
|
||||
this.showsAppWindowOnTop(packageName)
|
||||
}
|
||||
}
|
||||
@@ -214,6 +225,18 @@ fun LayersAssertion.visibleLayersShownMoreThanOneConsecutiveEntry(
|
||||
}
|
||||
}
|
||||
|
||||
fun LayersAssertion.appLayerReplacesWallpaperLayer(
|
||||
appName: String,
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
) {
|
||||
all("appLayerReplacesWallpaperLayer", bugId, enabled) {
|
||||
this.showsLayer("Wallpaper")
|
||||
.then()
|
||||
.replaceVisibleLayer("Wallpaper", appName)
|
||||
}
|
||||
}
|
||||
|
||||
fun LayersAssertion.wallpaperLayerReplacesAppLayer(
|
||||
testApp: IAppHelper,
|
||||
bugId: Int = 0,
|
||||
|
||||
@@ -65,6 +65,17 @@ fun WmAssertion.imeAppWindowIsAlwaysVisible(
|
||||
}
|
||||
}
|
||||
|
||||
fun WmAssertion.imeWindowBecomesVisible(
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
) {
|
||||
all("imeWindowBecomesVisible", bugId, enabled) {
|
||||
this.hidesNonAppWindow(IME_WINDOW_TITLE)
|
||||
.then()
|
||||
.showsNonAppWindow(IME_WINDOW_TITLE)
|
||||
}
|
||||
}
|
||||
|
||||
fun WmAssertion.imeWindowBecomesInvisible(
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
@@ -76,6 +87,18 @@ fun WmAssertion.imeWindowBecomesInvisible(
|
||||
}
|
||||
}
|
||||
|
||||
fun WmAssertion.imeAppWindowBecomesVisible(
|
||||
windowName: String,
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
) {
|
||||
all("imeAppWindowBecomesVisible", bugId, enabled) {
|
||||
this.hidesAppWindow(windowName)
|
||||
.then()
|
||||
.showsAppWindow(windowName)
|
||||
}
|
||||
}
|
||||
|
||||
fun WmAssertion.imeAppWindowBecomesInvisible(
|
||||
testApp: IAppHelper,
|
||||
bugId: Int = 0,
|
||||
|
||||
@@ -33,6 +33,8 @@ import com.android.server.wm.flicker.navBarWindowIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.visibleWindowsShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.visibleLayersShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.noUncoveredRegions
|
||||
import com.android.server.wm.flicker.appWindowAlwaysVisibleOnTop
|
||||
import com.android.server.wm.flicker.layerAlwaysVisible
|
||||
import com.android.server.wm.flicker.repetitions
|
||||
import com.android.server.wm.flicker.startRotation
|
||||
import com.android.server.wm.flicker.statusBarLayerIsAlwaysVisible
|
||||
@@ -56,8 +58,6 @@ class OpenImeWindowTest(
|
||||
flickerSpec: Flicker
|
||||
) : FlickerTestRunner(testName, flickerSpec) {
|
||||
companion object {
|
||||
private const val IME_WINDOW_TITLE = "InputMethod"
|
||||
|
||||
@Parameterized.Parameters(name = "{0}")
|
||||
@JvmStatic
|
||||
fun getParams(): List<Array<Any>> {
|
||||
@@ -93,12 +93,8 @@ class OpenImeWindowTest(
|
||||
statusBarWindowIsAlwaysVisible()
|
||||
visibleWindowsShownMoreThanOneConsecutiveEntry()
|
||||
|
||||
all("imeWindowBecomesVisible") {
|
||||
this.skipUntilFirstAssertion()
|
||||
.hidesNonAppWindow(IME_WINDOW_TITLE)
|
||||
.then()
|
||||
.showsNonAppWindow(IME_WINDOW_TITLE)
|
||||
}
|
||||
imeWindowBecomesVisible()
|
||||
appWindowAlwaysVisibleOnTop(testApp.`package`)
|
||||
}
|
||||
|
||||
layersTrace {
|
||||
@@ -110,6 +106,7 @@ class OpenImeWindowTest(
|
||||
visibleLayersShownMoreThanOneConsecutiveEntry()
|
||||
|
||||
imeLayerBecomesVisible()
|
||||
layerAlwaysVisible(testApp.`package`)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,14 +23,27 @@ import androidx.test.platform.app.InstrumentationRegistry
|
||||
import com.android.server.wm.flicker.Flicker
|
||||
import com.android.server.wm.flicker.FlickerTestRunner
|
||||
import com.android.server.wm.flicker.FlickerTestRunnerFactory
|
||||
import com.android.server.wm.flicker.helpers.buildTestTag
|
||||
import com.android.server.wm.flicker.helpers.ImeAppAutoFocusHelper
|
||||
import com.android.server.wm.flicker.helpers.reopenAppFromOverview
|
||||
import com.android.server.wm.flicker.helpers.hasWindow
|
||||
import com.android.server.wm.flicker.helpers.buildTestTag
|
||||
import com.android.server.wm.flicker.helpers.setRotation
|
||||
import com.android.server.wm.flicker.helpers.wakeUpAndGoToHomeScreen
|
||||
import com.android.server.wm.flicker.navBarLayerIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.navBarLayerRotatesAndScales
|
||||
import com.android.server.wm.flicker.navBarWindowIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.wallpaperWindowBecomesInvisible
|
||||
import com.android.server.wm.flicker.appLayerReplacesWallpaperLayer
|
||||
import com.android.server.wm.flicker.visibleWindowsShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.visibleLayersShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
|
||||
import com.android.server.wm.flicker.noUncoveredRegions
|
||||
import com.android.server.wm.flicker.repetitions
|
||||
import com.android.server.wm.flicker.startRotation
|
||||
import com.android.server.wm.flicker.endRotation
|
||||
import com.android.server.wm.flicker.statusBarLayerIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.statusBarLayerRotatesScales
|
||||
import com.android.server.wm.flicker.statusBarWindowIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.testapp.ActivityOptions
|
||||
import org.junit.FixMethodOrder
|
||||
import org.junit.runner.RunWith
|
||||
import org.junit.runners.MethodSorters
|
||||
@@ -54,8 +67,9 @@ class ReOpenImeWindowTest(
|
||||
fun getParams(): List<Array<Any>> {
|
||||
val instrumentation = InstrumentationRegistry.getInstrumentation()
|
||||
val testApp = ImeAppAutoFocusHelper(instrumentation)
|
||||
val testAppComponentName = ActivityOptions.IME_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME
|
||||
|
||||
return FlickerTestRunnerFactory(instrumentation, repetitions = 10)
|
||||
return FlickerTestRunnerFactory(instrumentation, repetitions = 5)
|
||||
.buildTest { configuration ->
|
||||
withTestName { buildTestTag("reOpenImeAutoFocus", testApp, configuration) }
|
||||
repeat { configuration.repetitions }
|
||||
@@ -73,7 +87,7 @@ class ReOpenImeWindowTest(
|
||||
}
|
||||
transitions {
|
||||
device.reopenAppFromOverview()
|
||||
device.hasWindow(testApp.getPackage())
|
||||
WindowManagerStateHelper().waitForFullScreenApp(testAppComponentName)
|
||||
}
|
||||
teardown {
|
||||
eachRun {
|
||||
@@ -84,6 +98,35 @@ class ReOpenImeWindowTest(
|
||||
this.setRotation(Surface.ROTATION_0)
|
||||
}
|
||||
}
|
||||
assertions {
|
||||
windowManagerTrace {
|
||||
navBarWindowIsAlwaysVisible()
|
||||
statusBarWindowIsAlwaysVisible()
|
||||
visibleWindowsShownMoreThanOneConsecutiveEntry()
|
||||
|
||||
imeWindowBecomesVisible()
|
||||
imeAppWindowBecomesVisible(testAppComponentName.className)
|
||||
wallpaperWindowBecomesInvisible()
|
||||
}
|
||||
|
||||
layersTrace {
|
||||
noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation,
|
||||
bugId = 141361128)
|
||||
navBarLayerRotatesAndScales(Surface.ROTATION_0,
|
||||
configuration.endRotation)
|
||||
statusBarLayerRotatesScales(Surface.ROTATION_0,
|
||||
configuration.endRotation)
|
||||
statusBarLayerIsAlwaysVisible(
|
||||
enabled = Surface.ROTATION_0 == configuration.endRotation)
|
||||
navBarLayerIsAlwaysVisible(
|
||||
enabled = Surface.ROTATION_0 == configuration.endRotation)
|
||||
visibleLayersShownMoreThanOneConsecutiveEntry(
|
||||
enabled = Surface.ROTATION_0 == configuration.endRotation)
|
||||
|
||||
imeLayerBecomesVisible()
|
||||
appLayerReplacesWallpaperLayer(testAppComponentName.className)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,20 +17,8 @@
|
||||
package com.android.server.wm.flicker.launch
|
||||
|
||||
import android.platform.helpers.IAppHelper
|
||||
import com.android.server.wm.flicker.dsl.LayersAssertion
|
||||
import com.android.server.wm.flicker.dsl.WmAssertion
|
||||
|
||||
fun WmAssertion.wallpaperWindowBecomesInvisible(
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
) {
|
||||
all("wallpaperWindowBecomesInvisible", bugId, enabled) {
|
||||
this.showsBelowAppWindow("Wallpaper")
|
||||
.then()
|
||||
.hidesBelowAppWindow("Wallpaper")
|
||||
}
|
||||
}
|
||||
|
||||
fun WmAssertion.appWindowReplacesLauncherAsTopWindow(
|
||||
testApp: IAppHelper,
|
||||
bugId: Int = 0,
|
||||
@@ -41,16 +29,4 @@ fun WmAssertion.appWindowReplacesLauncherAsTopWindow(
|
||||
.then()
|
||||
.showsAppWindowOnTop("Snapshot", testApp.getPackage())
|
||||
}
|
||||
}
|
||||
|
||||
fun LayersAssertion.appLayerReplacesWallpaperLayer(
|
||||
testApp: IAppHelper,
|
||||
bugId: Int = 0,
|
||||
enabled: Boolean = bugId == 0
|
||||
) {
|
||||
all("appLayerReplacesWallpaperLayer", bugId, enabled) {
|
||||
this.showsLayer("Wallpaper")
|
||||
.then()
|
||||
.replaceVisibleLayer("Wallpaper", testApp.getPackage())
|
||||
}
|
||||
}
|
||||
@@ -40,6 +40,8 @@ import com.android.server.wm.flicker.statusBarLayerRotatesScales
|
||||
import com.android.server.wm.flicker.statusBarWindowIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.visibleWindowsShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.visibleLayersShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.wallpaperWindowBecomesInvisible
|
||||
import com.android.server.wm.flicker.appLayerReplacesWallpaperLayer
|
||||
import org.junit.FixMethodOrder
|
||||
import org.junit.runner.RunWith
|
||||
import org.junit.runners.MethodSorters
|
||||
@@ -107,7 +109,7 @@ class OpenAppColdTest(
|
||||
statusBarLayerIsAlwaysVisible(enabled = false)
|
||||
visibleLayersShownMoreThanOneConsecutiveEntry(bugId = 174541970)
|
||||
|
||||
appLayerReplacesWallpaperLayer(testApp)
|
||||
appLayerReplacesWallpaperLayer(testApp.`package`)
|
||||
}
|
||||
|
||||
eventLog {
|
||||
|
||||
@@ -29,7 +29,6 @@ import com.android.server.wm.flicker.visibleLayersShownMoreThanOneConsecutiveEnt
|
||||
import com.android.server.wm.flicker.visibleWindowsShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.helpers.StandardAppHelper
|
||||
import com.android.server.wm.flicker.helpers.reopenAppFromOverview
|
||||
import com.android.server.wm.flicker.helpers.hasWindow
|
||||
import com.android.server.wm.flicker.helpers.buildTestTag
|
||||
import com.android.server.wm.flicker.helpers.setRotation
|
||||
import com.android.server.wm.flicker.helpers.wakeUpAndGoToHomeScreen
|
||||
@@ -42,6 +41,10 @@ import com.android.server.wm.flicker.startRotation
|
||||
import com.android.server.wm.flicker.statusBarLayerIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.statusBarLayerRotatesScales
|
||||
import com.android.server.wm.flicker.statusBarWindowIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.wallpaperWindowBecomesInvisible
|
||||
import com.android.server.wm.flicker.appLayerReplacesWallpaperLayer
|
||||
import com.android.server.wm.flicker.testapp.ActivityOptions
|
||||
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
|
||||
import org.junit.FixMethodOrder
|
||||
import org.junit.runner.RunWith
|
||||
import org.junit.runners.MethodSorters
|
||||
@@ -83,7 +86,9 @@ class OpenAppFromOverviewTest(
|
||||
}
|
||||
transitions {
|
||||
device.reopenAppFromOverview()
|
||||
device.hasWindow(testApp.getPackage())
|
||||
WindowManagerStateHelper().waitForFullScreenApp(
|
||||
ActivityOptions.SIMPLE_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME
|
||||
)
|
||||
}
|
||||
teardown {
|
||||
test {
|
||||
@@ -115,7 +120,7 @@ class OpenAppFromOverviewTest(
|
||||
visibleLayersShownMoreThanOneConsecutiveEntry(
|
||||
enabled = Surface.ROTATION_0 == configuration.endRotation)
|
||||
|
||||
appLayerReplacesWallpaperLayer(testApp)
|
||||
appLayerReplacesWallpaperLayer(testApp.`package`)
|
||||
}
|
||||
|
||||
eventLog {
|
||||
|
||||
@@ -40,6 +40,8 @@ import com.android.server.wm.flicker.statusBarLayerRotatesScales
|
||||
import com.android.server.wm.flicker.statusBarWindowIsAlwaysVisible
|
||||
import com.android.server.wm.flicker.visibleWindowsShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.visibleLayersShownMoreThanOneConsecutiveEntry
|
||||
import com.android.server.wm.flicker.wallpaperWindowBecomesInvisible
|
||||
import com.android.server.wm.flicker.appLayerReplacesWallpaperLayer
|
||||
import org.junit.FixMethodOrder
|
||||
import org.junit.runner.RunWith
|
||||
import org.junit.runners.MethodSorters
|
||||
@@ -112,7 +114,7 @@ class OpenAppWarmTest(
|
||||
visibleLayersShownMoreThanOneConsecutiveEntry(
|
||||
enabled = Surface.ROTATION_0 == configuration.endRotation)
|
||||
|
||||
appLayerReplacesWallpaperLayer(testApp)
|
||||
appLayerReplacesWallpaperLayer(testApp.`package`)
|
||||
}
|
||||
|
||||
eventLog {
|
||||
|
||||
@@ -30,7 +30,7 @@ import com.android.server.wm.flicker.FlickerTestRunner
|
||||
import com.android.server.wm.flicker.FlickerTestRunnerFactory
|
||||
import com.android.server.wm.flicker.endRotation
|
||||
import com.android.server.wm.flicker.focusDoesNotChange
|
||||
import com.android.server.wm.flicker.windowAlwaysVisible
|
||||
import com.android.server.wm.flicker.appWindowAlwaysVisibleOnTop
|
||||
import com.android.server.wm.flicker.layerAlwaysVisible
|
||||
import com.android.server.wm.flicker.helpers.WindowUtils
|
||||
import com.android.server.wm.flicker.helpers.buildTestTag
|
||||
@@ -146,7 +146,7 @@ class SeamlessAppRotationTest(
|
||||
navBarWindowIsAlwaysVisible(bugId = 140855415)
|
||||
statusBarWindowIsAlwaysVisible(bugId = 140855415)
|
||||
visibleWindowsShownMoreThanOneConsecutiveEntry()
|
||||
windowAlwaysVisible(configuration.intentPackageName)
|
||||
appWindowAlwaysVisibleOnTop(configuration.intentPackageName)
|
||||
}
|
||||
|
||||
layersTrace {
|
||||
|
||||
@@ -23,4 +23,10 @@ public class ActivityOptions {
|
||||
public static final ComponentName SEAMLESS_ACTIVITY_COMPONENT_NAME =
|
||||
new ComponentName("com.android.server.wm.flicker.testapp",
|
||||
"com.android.server.wm.flicker.testapp.SeamlessRotationActivity");
|
||||
public static final ComponentName IME_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME =
|
||||
new ComponentName("com.android.server.wm.flicker.testapp",
|
||||
"com.android.server.wm.flicker.testapp.ImeActivityAutoFocus");
|
||||
public static final ComponentName SIMPLE_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME =
|
||||
new ComponentName("com.android.server.wm.flicker.testapp",
|
||||
"com.android.server.wm.flicker.testapp.SimpleActivity");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user