diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/CommonAssertions.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/CommonAssertions.kt index 8457039e03994..58b3992b22448 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/CommonAssertions.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/CommonAssertions.kt @@ -77,21 +77,43 @@ fun LayersAssertion.noUncoveredRegions( @JvmOverloads fun LayersAssertion.navBarLayerIsAlwaysVisible( + rotatesScreen: Boolean = false, bugId: Int = 0, enabled: Boolean = bugId == 0 ) { - all("navBarLayerIsAlwaysVisible", enabled, bugId) { - this.showsLayer(NAVIGATION_BAR_WINDOW_TITLE) + if (rotatesScreen) { + all("navBarLayerIsAlwaysVisible", enabled, bugId) { + this.showsLayer(NAVIGATION_BAR_WINDOW_TITLE) + .then() + .hidesLayer(NAVIGATION_BAR_WINDOW_TITLE) + .then() + .showsLayer(NAVIGATION_BAR_WINDOW_TITLE) + } + } else { + all("navBarLayerIsAlwaysVisible", enabled, bugId) { + this.showsLayer(NAVIGATION_BAR_WINDOW_TITLE) + } } } @JvmOverloads fun LayersAssertion.statusBarLayerIsAlwaysVisible( + rotatesScreen: Boolean = false, bugId: Int = 0, enabled: Boolean = bugId == 0 ) { - all("statusBarLayerIsAlwaysVisible", enabled, bugId) { - this.showsLayer(STATUS_BAR_WINDOW_TITLE) + if (rotatesScreen) { + all("statusBarLayerIsAlwaysVisible", enabled, bugId) { + this.showsLayer(STATUS_BAR_WINDOW_TITLE) + .then() + hidesLayer(STATUS_BAR_WINDOW_TITLE) + .then() + .showsLayer(STATUS_BAR_WINDOW_TITLE) + } + } else { + all("statusBarLayerIsAlwaysVisible", enabled, bugId) { + this.showsLayer(STATUS_BAR_WINDOW_TITLE) + } } } diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeAutoOpenWindowToHomeTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeAutoOpenWindowToHomeTest.kt index 76478025ee631..9924931431796 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeAutoOpenWindowToHomeTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeAutoOpenWindowToHomeTest.kt @@ -43,7 +43,7 @@ import org.junit.runners.Parameterized /** * Test IME window closing back to app window transitions. - * To run this test: `atest FlickerTests:CloseImeWindowToAppTest` + * To run this test: `atest FlickerTests:CloseImeAutoOpenWindowToHomeTest` */ @Presubmit @RequiresDevice @@ -94,14 +94,16 @@ class CloseImeAutoOpenWindowToHomeTest( } layersTrace { - navBarLayerIsAlwaysVisible(bugId = 140855415) - statusBarLayerIsAlwaysVisible(bugId = 140855415) noUncoveredRegions(configuration.startRotation, Surface.ROTATION_0, allStates = false) navBarLayerRotatesAndScales(configuration.startRotation, Surface.ROTATION_0, bugId = 140855415) statusBarLayerRotatesScales(configuration.startRotation, Surface.ROTATION_0) + navBarLayerIsAlwaysVisible(configuration.startRotation != + Surface.ROTATION_0) + statusBarLayerIsAlwaysVisible(configuration.startRotation != + Surface.ROTATION_0) imeLayerBecomesInvisible(bugId = 141458352) imeAppLayerBecomesInvisible(testApp, bugId = 153739621) } diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeWindowToHomeTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeWindowToHomeTest.kt index 6cfb28202b39c..46f584b51e8c7 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeWindowToHomeTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/ime/CloseImeWindowToHomeTest.kt @@ -100,14 +100,16 @@ class CloseImeWindowToHomeTest( } layersTrace { - navBarLayerIsAlwaysVisible(bugId = 140855415) - statusBarLayerIsAlwaysVisible(bugId = 140855415) noUncoveredRegions(configuration.startRotation, Surface.ROTATION_0, allStates = false) navBarLayerRotatesAndScales(configuration.startRotation, Surface.ROTATION_0, bugId = 140855415) statusBarLayerRotatesScales(configuration.startRotation, Surface.ROTATION_0) + navBarLayerIsAlwaysVisible(configuration.startRotation != + Surface.ROTATION_0) + statusBarLayerIsAlwaysVisible(configuration.startRotation != + Surface.ROTATION_0) imeLayerBecomesInvisible(bugId = 153739621) imeAppLayerBecomesInvisible(testApp, bugId = 153739621) } diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppColdTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppColdTest.kt index 1081414e9b6bc..1194933ee3157 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppColdTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppColdTest.kt @@ -87,6 +87,7 @@ class OpenAppColdTest( windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() + appWindowReplacesLauncherAsTopWindow(testApp) wallpaperWindowBecomesInvisible() } @@ -99,9 +100,11 @@ class OpenAppColdTest( configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) - navBarLayerIsAlwaysVisible( - enabled = configuration.endRotation == Surface.ROTATION_0) - statusBarLayerIsAlwaysVisible(enabled = false) + navBarLayerIsAlwaysVisible(Surface.ROTATION_0 != + configuration.endRotation) + statusBarLayerIsAlwaysVisible(Surface.ROTATION_0 != + configuration.endRotation) + wallpaperLayerBecomesInvisible(testApp) } diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppWarmTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppWarmTest.kt index 2061994b57b14..136be29e421dd 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppWarmTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppWarmTest.kt @@ -91,6 +91,7 @@ class OpenAppWarmTest( windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() + appWindowReplacesLauncherAsTopWindow(testApp) wallpaperWindowBecomesInvisible(enabled = false) } @@ -103,9 +104,11 @@ class OpenAppWarmTest( configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) - navBarLayerIsAlwaysVisible( - enabled = configuration.endRotation == Surface.ROTATION_0) - statusBarLayerIsAlwaysVisible(enabled = false) + navBarLayerIsAlwaysVisible(Surface.ROTATION_0 != + configuration.endRotation) + statusBarLayerIsAlwaysVisible(Surface.ROTATION_0 != + configuration.endRotation) + wallpaperLayerBecomesInvisible(testApp) }