Loading tests/FlickerTests/src/com/android/server/wm/flicker/launch/CommonAssertions.kt +3 −7 Original line number Diff line number Diff line Loading @@ -17,14 +17,10 @@ package com.android.server.wm.flicker.launch import android.platform.helpers.IAppHelper import com.android.server.wm.flicker.dsl.WmAssertionBuilderLegacy import com.android.server.wm.flicker.dsl.WmAssertionBuilder fun WmAssertionBuilderLegacy.appWindowReplacesLauncherAsTopWindow( testApp: IAppHelper, bugId: Int = 0, enabled: Boolean = bugId == 0 ) { all("appWindowReplacesLauncherAsTopWindow", bugId, enabled) { fun WmAssertionBuilder.appWindowReplacesLauncherAsTopWindow(testApp: IAppHelper, bugId: Int = 0) { all("appWindowReplacesLauncherAsTopWindow", bugId) { this.showsAppWindowOnTop("Launcher") .then() .showsAppWindowOnTop("Snapshot", testApp.getPackage()) Loading tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppColdTest.kt +38 −25 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.server.wm.flicker.launch import android.platform.test.annotations.Presubmit import android.view.Surface import androidx.test.filters.RequiresDevice import androidx.test.platform.app.InstrumentationRegistry Loading Loading @@ -51,7 +50,6 @@ import org.junit.runners.Parameterized * Test cold launch app from launcher. * To run this test: `atest FlickerTests:OpenAppColdTest` */ @Presubmit @RequiresDevice @RunWith(Parameterized::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) Loading @@ -66,7 +64,7 @@ class OpenAppColdTest( val testApp = SimpleAppHelper(instrumentation) return FlickerTestRunnerFactory.getInstance() .buildTest(instrumentation) { configuration -> withTestName { buildTestTag("openAppCold", testApp, configuration) } withTestName { buildTestTag(configuration) } repeat { configuration.repetitions } setup { test { Loading @@ -88,11 +86,13 @@ class OpenAppColdTest( } } assertions { val isRotated = configuration.startRotation.isRotated() presubmit { windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() visibleWindowsShownMoreThanOneConsecutiveEntry() appWindowReplacesLauncherAsTopWindow(testApp) wallpaperWindowBecomesInvisible() } Loading @@ -100,23 +100,36 @@ class OpenAppColdTest( layersTrace { // During testing the launcher is always in portrait mode noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation) navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) navBarLayerIsAlwaysVisible() statusBarLayerIsAlwaysVisible() visibleLayersShownMoreThanOneConsecutiveEntry(enabled = false) appLayerReplacesWallpaperLayer(testApp.`package`) if (!isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } eventLog { focusChanges("NexusLauncherActivity", testApp.`package`) } } flaky { layersTrace { visibleLayersShownMoreThanOneConsecutiveEntry() if (isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } } } } } } Loading tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppFromOverviewTest.kt +47 −28 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.server.wm.flicker.launch import android.platform.test.annotations.Presubmit import android.view.Surface import androidx.test.filters.RequiresDevice import androidx.test.platform.app.InstrumentationRegistry Loading Loading @@ -52,7 +51,6 @@ import org.junit.runners.Parameterized * Launch an app from the recents app view (the overview) * To run this test: `atest FlickerTests:OpenAppFromOverviewTest` */ @Presubmit @RequiresDevice @RunWith(Parameterized::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) Loading @@ -67,7 +65,7 @@ class OpenAppFromOverviewTest( val testApp = SimpleAppHelper(instrumentation) return FlickerTestRunnerFactory.getInstance() .buildTest(instrumentation, repetitions = 5) { configuration -> withTestName { buildTestTag("openAppFromOverview", configuration) } withTestName { buildTestTag(configuration) } repeat { configuration.repetitions } setup { test { Loading @@ -92,38 +90,59 @@ class OpenAppFromOverviewTest( } } assertions { val isRotated = configuration.startRotation.isRotated() presubmit { windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() visibleWindowsShownMoreThanOneConsecutiveEntry() appWindowReplacesLauncherAsTopWindow(testApp) wallpaperWindowBecomesInvisible() } layersTrace { noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation, bugId = 141361128) appLayerReplacesWallpaperLayer(testApp.`package`) if (!isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) statusBarLayerIsAlwaysVisible( enabled = Surface.ROTATION_0 == configuration.endRotation) navBarLayerIsAlwaysVisible( enabled = Surface.ROTATION_0 == configuration.endRotation) visibleLayersShownMoreThanOneConsecutiveEntry( enabled = false) appLayerReplacesWallpaperLayer(testApp.`package`) configuration.endRotation) } else { statusBarLayerIsAlwaysVisible() navBarLayerIsAlwaysVisible() } } eventLog { focusChanges("NexusLauncherActivity", testApp.`package`) } } postsubmit { windowManagerTrace { visibleWindowsShownMoreThanOneConsecutiveEntry() } } flaky { layersTrace { visibleLayersShownMoreThanOneConsecutiveEntry() noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation, bugId = 141361128) if (isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } else { statusBarLayerIsAlwaysVisible() navBarLayerIsAlwaysVisible() } } } } } } } Loading tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppWarmTest.kt +39 −25 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.server.wm.flicker.launch import android.platform.test.annotations.Presubmit import android.view.Surface import androidx.test.filters.RequiresDevice import androidx.test.platform.app.InstrumentationRegistry Loading Loading @@ -51,7 +50,6 @@ import org.junit.runners.Parameterized * Test warm launch app. * To run this test: `atest FlickerTests:OpenAppWarmTest` */ @Presubmit @RequiresDevice @RunWith(Parameterized::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) Loading @@ -64,7 +62,7 @@ class OpenAppWarmTest(testSpec: FlickerTestRunnerFactory.TestSpec) : FlickerTest val testApp = SimpleAppHelper(instrumentation) return FlickerTestRunnerFactory.getInstance() .buildTest(instrumentation) { configuration -> withTestName { buildTestTag("openAppWarm", testApp, configuration) } withTestName { buildTestTag(configuration) } repeat { configuration.repetitions } setup { test { Loading @@ -91,6 +89,9 @@ class OpenAppWarmTest(testSpec: FlickerTestRunnerFactory.TestSpec) : FlickerTest } } assertions { val isRotated = configuration.startRotation.isRotated() presubmit { windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() Loading @@ -103,23 +104,36 @@ class OpenAppWarmTest(testSpec: FlickerTestRunnerFactory.TestSpec) : FlickerTest layersTrace { // During testing the launcher is always in portrait mode noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation) navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) navBarLayerIsAlwaysVisible() statusBarLayerIsAlwaysVisible() visibleLayersShownMoreThanOneConsecutiveEntry(enabled = false) appLayerReplacesWallpaperLayer(testApp.`package`) if (!isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } eventLog { focusChanges("NexusLauncherActivity", testApp.`package`) } } flaky { layersTrace { visibleLayersShownMoreThanOneConsecutiveEntry() if (isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } } } } } } Loading Loading
tests/FlickerTests/src/com/android/server/wm/flicker/launch/CommonAssertions.kt +3 −7 Original line number Diff line number Diff line Loading @@ -17,14 +17,10 @@ package com.android.server.wm.flicker.launch import android.platform.helpers.IAppHelper import com.android.server.wm.flicker.dsl.WmAssertionBuilderLegacy import com.android.server.wm.flicker.dsl.WmAssertionBuilder fun WmAssertionBuilderLegacy.appWindowReplacesLauncherAsTopWindow( testApp: IAppHelper, bugId: Int = 0, enabled: Boolean = bugId == 0 ) { all("appWindowReplacesLauncherAsTopWindow", bugId, enabled) { fun WmAssertionBuilder.appWindowReplacesLauncherAsTopWindow(testApp: IAppHelper, bugId: Int = 0) { all("appWindowReplacesLauncherAsTopWindow", bugId) { this.showsAppWindowOnTop("Launcher") .then() .showsAppWindowOnTop("Snapshot", testApp.getPackage()) Loading
tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppColdTest.kt +38 −25 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.server.wm.flicker.launch import android.platform.test.annotations.Presubmit import android.view.Surface import androidx.test.filters.RequiresDevice import androidx.test.platform.app.InstrumentationRegistry Loading Loading @@ -51,7 +50,6 @@ import org.junit.runners.Parameterized * Test cold launch app from launcher. * To run this test: `atest FlickerTests:OpenAppColdTest` */ @Presubmit @RequiresDevice @RunWith(Parameterized::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) Loading @@ -66,7 +64,7 @@ class OpenAppColdTest( val testApp = SimpleAppHelper(instrumentation) return FlickerTestRunnerFactory.getInstance() .buildTest(instrumentation) { configuration -> withTestName { buildTestTag("openAppCold", testApp, configuration) } withTestName { buildTestTag(configuration) } repeat { configuration.repetitions } setup { test { Loading @@ -88,11 +86,13 @@ class OpenAppColdTest( } } assertions { val isRotated = configuration.startRotation.isRotated() presubmit { windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() visibleWindowsShownMoreThanOneConsecutiveEntry() appWindowReplacesLauncherAsTopWindow(testApp) wallpaperWindowBecomesInvisible() } Loading @@ -100,23 +100,36 @@ class OpenAppColdTest( layersTrace { // During testing the launcher is always in portrait mode noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation) navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) navBarLayerIsAlwaysVisible() statusBarLayerIsAlwaysVisible() visibleLayersShownMoreThanOneConsecutiveEntry(enabled = false) appLayerReplacesWallpaperLayer(testApp.`package`) if (!isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } eventLog { focusChanges("NexusLauncherActivity", testApp.`package`) } } flaky { layersTrace { visibleLayersShownMoreThanOneConsecutiveEntry() if (isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } } } } } } Loading
tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppFromOverviewTest.kt +47 −28 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.server.wm.flicker.launch import android.platform.test.annotations.Presubmit import android.view.Surface import androidx.test.filters.RequiresDevice import androidx.test.platform.app.InstrumentationRegistry Loading Loading @@ -52,7 +51,6 @@ import org.junit.runners.Parameterized * Launch an app from the recents app view (the overview) * To run this test: `atest FlickerTests:OpenAppFromOverviewTest` */ @Presubmit @RequiresDevice @RunWith(Parameterized::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) Loading @@ -67,7 +65,7 @@ class OpenAppFromOverviewTest( val testApp = SimpleAppHelper(instrumentation) return FlickerTestRunnerFactory.getInstance() .buildTest(instrumentation, repetitions = 5) { configuration -> withTestName { buildTestTag("openAppFromOverview", configuration) } withTestName { buildTestTag(configuration) } repeat { configuration.repetitions } setup { test { Loading @@ -92,38 +90,59 @@ class OpenAppFromOverviewTest( } } assertions { val isRotated = configuration.startRotation.isRotated() presubmit { windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() visibleWindowsShownMoreThanOneConsecutiveEntry() appWindowReplacesLauncherAsTopWindow(testApp) wallpaperWindowBecomesInvisible() } layersTrace { noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation, bugId = 141361128) appLayerReplacesWallpaperLayer(testApp.`package`) if (!isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) statusBarLayerIsAlwaysVisible( enabled = Surface.ROTATION_0 == configuration.endRotation) navBarLayerIsAlwaysVisible( enabled = Surface.ROTATION_0 == configuration.endRotation) visibleLayersShownMoreThanOneConsecutiveEntry( enabled = false) appLayerReplacesWallpaperLayer(testApp.`package`) configuration.endRotation) } else { statusBarLayerIsAlwaysVisible() navBarLayerIsAlwaysVisible() } } eventLog { focusChanges("NexusLauncherActivity", testApp.`package`) } } postsubmit { windowManagerTrace { visibleWindowsShownMoreThanOneConsecutiveEntry() } } flaky { layersTrace { visibleLayersShownMoreThanOneConsecutiveEntry() noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation, bugId = 141361128) if (isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } else { statusBarLayerIsAlwaysVisible() navBarLayerIsAlwaysVisible() } } } } } } } Loading
tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppWarmTest.kt +39 −25 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ package com.android.server.wm.flicker.launch import android.platform.test.annotations.Presubmit import android.view.Surface import androidx.test.filters.RequiresDevice import androidx.test.platform.app.InstrumentationRegistry Loading Loading @@ -51,7 +50,6 @@ import org.junit.runners.Parameterized * Test warm launch app. * To run this test: `atest FlickerTests:OpenAppWarmTest` */ @Presubmit @RequiresDevice @RunWith(Parameterized::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) Loading @@ -64,7 +62,7 @@ class OpenAppWarmTest(testSpec: FlickerTestRunnerFactory.TestSpec) : FlickerTest val testApp = SimpleAppHelper(instrumentation) return FlickerTestRunnerFactory.getInstance() .buildTest(instrumentation) { configuration -> withTestName { buildTestTag("openAppWarm", testApp, configuration) } withTestName { buildTestTag(configuration) } repeat { configuration.repetitions } setup { test { Loading @@ -91,6 +89,9 @@ class OpenAppWarmTest(testSpec: FlickerTestRunnerFactory.TestSpec) : FlickerTest } } assertions { val isRotated = configuration.startRotation.isRotated() presubmit { windowManagerTrace { navBarWindowIsAlwaysVisible() statusBarWindowIsAlwaysVisible() Loading @@ -103,23 +104,36 @@ class OpenAppWarmTest(testSpec: FlickerTestRunnerFactory.TestSpec) : FlickerTest layersTrace { // During testing the launcher is always in portrait mode noUncoveredRegions(Surface.ROTATION_0, configuration.endRotation) navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation, enabled = !configuration.startRotation.isRotated()) navBarLayerIsAlwaysVisible() statusBarLayerIsAlwaysVisible() visibleLayersShownMoreThanOneConsecutiveEntry(enabled = false) appLayerReplacesWallpaperLayer(testApp.`package`) if (!isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } eventLog { focusChanges("NexusLauncherActivity", testApp.`package`) } } flaky { layersTrace { visibleLayersShownMoreThanOneConsecutiveEntry() if (isRotated) { navBarLayerRotatesAndScales(Surface.ROTATION_0, configuration.endRotation) statusBarLayerRotatesScales(Surface.ROTATION_0, configuration.endRotation) } } } } } } } Loading