diff options
9 files changed, 72 insertions, 76 deletions
diff --git a/tests/FlickerTests/Android.bp b/tests/FlickerTests/Android.bp index feae3b79520f..37b529bb96c2 100644 --- a/tests/FlickerTests/Android.bp +++ b/tests/FlickerTests/Android.bp @@ -37,6 +37,7 @@ filegroup { name: "FlickerTestsActivityEmbedding-src", srcs: [ "src/**/activityembedding/*.kt", + "src/**/activityembedding/open/*.kt", "src/**/activityembedding/close/*.kt", "src/**/activityembedding/rotation/*.kt", ], @@ -149,6 +150,9 @@ android_test { ":FlickerTestsBase-src", ":FlickerTestsAppLaunch-src", ], + exclude_srcs: [ + ":FlickerTestsActivityEmbedding-src", + ], } android_test { diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/close/CloseSecondaryActivityInSplitTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/close/CloseSecondaryActivityInSplitTest.kt index 7a582f7de200..4530ef3b88da 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/close/CloseSecondaryActivityInSplitTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/close/CloseSecondaryActivityInSplitTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.wm.flicker.activityembedding +package com.android.server.wm.flicker.activityembedding.close import android.platform.test.annotations.Presubmit import android.tools.common.datatypes.Rect @@ -24,6 +24,7 @@ import android.tools.device.flicker.legacy.FlickerBuilder import android.tools.device.flicker.legacy.LegacyFlickerTest import android.tools.device.flicker.legacy.LegacyFlickerTestFactory import androidx.test.filters.RequiresDevice +import com.android.server.wm.flicker.activityembedding.ActivityEmbeddingTestBase import com.android.server.wm.flicker.helpers.ActivityEmbeddingAppHelper import org.junit.FixMethodOrder import org.junit.Test diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/MainActivityStartsSecondaryWithAlwaysExpandTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/MainActivityStartsSecondaryWithAlwaysExpandTest.kt index 48aaebd14f56..0f406fda28b6 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/MainActivityStartsSecondaryWithAlwaysExpandTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/MainActivityStartsSecondaryWithAlwaysExpandTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.wm.flicker.activityembedding +package com.android.server.wm.flicker.activityembedding.open import android.platform.test.annotations.FlakyTest import android.platform.test.annotations.Presubmit @@ -24,8 +24,10 @@ import android.tools.device.flicker.legacy.FlickerBuilder import android.tools.device.flicker.legacy.LegacyFlickerTest import android.tools.device.flicker.legacy.LegacyFlickerTestFactory import androidx.test.filters.RequiresDevice +import com.android.server.wm.flicker.activityembedding.ActivityEmbeddingTestBase import com.android.server.wm.flicker.helpers.ActivityEmbeddingAppHelper import org.junit.FixMethodOrder +import org.junit.Ignore import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.MethodSorters @@ -54,7 +56,7 @@ class MainActivityStartsSecondaryWithAlwaysExpandTest(flicker: LegacyFlickerTest testApp.launchViaIntent(wmHelper) testApp.launchSecondaryActivity(wmHelper) startDisplayBounds = - wmHelper.currentState.layerState.physicalDisplayBounds ?: error("Display not found") + wmHelper.currentState.layerState.physicalDisplayBounds ?: error("Display not found") } transitions { // Launch C with alwaysExpand @@ -66,23 +68,14 @@ class MainActivityStartsSecondaryWithAlwaysExpandTest(flicker: LegacyFlickerTest } } - @FlakyTest(bugId = 286952194) - @Presubmit - @Test - override fun navBarWindowIsVisibleAtStartAndEnd() {} + @Ignore("Not applicable to this CUJ.") override fun navBarWindowIsVisibleAtStartAndEnd() {} - @FlakyTest(bugId = 286952194) - @Presubmit - @Test - override fun statusBarWindowIsAlwaysVisible() {} + @Ignore("Not applicable to this CUJ.") override fun statusBarWindowIsAlwaysVisible() {} - @FlakyTest(bugId = 286952194) - @Presubmit - @Test - override fun statusBarLayerPositionAtStartAndEnd() {} + @Ignore("Not applicable to this CUJ.") override fun statusBarLayerPositionAtStartAndEnd() {} /** Transition begins with a split. */ - @Presubmit + @FlakyTest(bugId = 286952194) @Test fun startsWithSplit() { flicker.assertWmStart { @@ -94,7 +87,7 @@ class MainActivityStartsSecondaryWithAlwaysExpandTest(flicker: LegacyFlickerTest } /** Main activity should become invisible after being covered by always expand activity. */ - @Presubmit + @FlakyTest(bugId = 286952194) @Test fun mainActivityLayerBecomesInvisible() { flicker.assertLayers { @@ -105,7 +98,7 @@ class MainActivityStartsSecondaryWithAlwaysExpandTest(flicker: LegacyFlickerTest } /** Secondary activity should become invisible after being covered by always expand activity. */ - @Presubmit + @FlakyTest(bugId = 286952194) @Test fun secondaryActivityLayerBecomesInvisible() { flicker.assertLayers { @@ -116,7 +109,7 @@ class MainActivityStartsSecondaryWithAlwaysExpandTest(flicker: LegacyFlickerTest } /** At the end of transition always expand activity is in fullscreen. */ - @Presubmit + @FlakyTest(bugId = 286952194) @Test fun endsWithAlwaysExpandActivityCoveringFullScreen() { flicker.assertWmEnd { diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingPlaceholderSplitTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingPlaceholderSplitTest.kt index 27a5bd0da628..8a997ddb5b35 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingPlaceholderSplitTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingPlaceholderSplitTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.wm.flicker.activityembedding +package com.android.server.wm.flicker.activityembedding.open import android.platform.test.annotations.Presubmit import android.tools.device.flicker.junit.FlickerParametersRunnerFactory @@ -22,6 +22,7 @@ import android.tools.device.flicker.legacy.FlickerBuilder import android.tools.device.flicker.legacy.LegacyFlickerTest import android.tools.device.flicker.legacy.LegacyFlickerTestFactory import androidx.test.filters.RequiresDevice +import com.android.server.wm.flicker.activityembedding.ActivityEmbeddingTestBase import com.android.server.wm.flicker.helpers.ActivityEmbeddingAppHelper import org.junit.FixMethodOrder import org.junit.Test diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingSecondaryToSplitTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingSecondaryToSplitTest.kt index 16dbfce15ab5..49aa84bbffb4 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingSecondaryToSplitTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenActivityEmbeddingSecondaryToSplitTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.wm.flicker.activityembedding +package com.android.server.wm.flicker.activityembedding.open import android.platform.test.annotations.Presubmit import android.tools.common.traces.component.ComponentNameMatcher @@ -23,6 +23,7 @@ import android.tools.device.flicker.legacy.FlickerBuilder import android.tools.device.flicker.legacy.LegacyFlickerTest import android.tools.device.flicker.legacy.LegacyFlickerTestFactory import androidx.test.filters.RequiresDevice +import com.android.server.wm.flicker.activityembedding.ActivityEmbeddingTestBase import com.android.server.wm.flicker.helpers.ActivityEmbeddingAppHelper import org.junit.FixMethodOrder import org.junit.Test diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenThirdActivityOverSplitTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenThirdActivityOverSplitTest.kt index 43f4ce9b4f6b..27de12e7dfdb 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenThirdActivityOverSplitTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/open/OpenThirdActivityOverSplitTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.wm.flicker.activityembedding +package com.android.server.wm.flicker.activityembedding.open import android.platform.test.annotations.Presubmit import android.tools.common.datatypes.Rect @@ -24,6 +24,7 @@ import android.tools.device.flicker.legacy.FlickerBuilder import android.tools.device.flicker.legacy.LegacyFlickerTest import android.tools.device.flicker.legacy.LegacyFlickerTestFactory import androidx.test.filters.RequiresDevice +import com.android.server.wm.flicker.activityembedding.ActivityEmbeddingTestBase import com.android.server.wm.flicker.helpers.ActivityEmbeddingAppHelper import org.junit.FixMethodOrder import org.junit.Test @@ -32,8 +33,8 @@ import org.junit.runners.MethodSorters import org.junit.runners.Parameterized /** - * Test launching a secondary activity over an existing split. By default the new secondary - * activity will stack over the previous secondary activity. + * Test launching a secondary activity over an existing split. By default the new secondary activity + * will stack over the previous secondary activity. * * Setup: From Activity A launch a split A|B. * @@ -45,8 +46,8 @@ import org.junit.runners.Parameterized @RunWith(Parameterized::class) @Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class) @FixMethodOrder(MethodSorters.NAME_ASCENDING) -class OpenThirdActivityOverSplitTest (flicker: LegacyFlickerTest) : - ActivityEmbeddingTestBase(flicker) { +class OpenThirdActivityOverSplitTest(flicker: LegacyFlickerTest) : + ActivityEmbeddingTestBase(flicker) { /** {@inheritDoc} */ override val transition: FlickerBuilder.() -> Unit = { setup { @@ -56,12 +57,10 @@ class OpenThirdActivityOverSplitTest (flicker: LegacyFlickerTest) : testApp.launchSecondaryActivity(wmHelper) startDisplayBounds = - wmHelper.currentState.layerState.physicalDisplayBounds - ?: error("Can't get display bounds") - } - transitions { - testApp.launchThirdActivity(wmHelper) + wmHelper.currentState.layerState.physicalDisplayBounds + ?: error("Can't get display bounds") } + transitions { testApp.launchThirdActivity(wmHelper) } teardown { tapl.goHome() testApp.exit(wmHelper) @@ -79,36 +78,33 @@ class OpenThirdActivityOverSplitTest (flicker: LegacyFlickerTest) : @Presubmit @Test fun mainActivityLayersAlwaysVisible() { - flicker.assertLayers { - isVisible(ActivityEmbeddingAppHelper.MAIN_ACTIVITY_COMPONENT) - } + flicker.assertLayers { isVisible(ActivityEmbeddingAppHelper.MAIN_ACTIVITY_COMPONENT) } flicker.assertLayersStart { - val display = this.entry.displays.firstOrNull { it.isOn && !it.isVirtual } + val display = + this.entry.displays.firstOrNull { it.isOn && !it.isVirtual } ?: error("No non-virtual and on display found") val mainActivityRegion = - this.visibleRegion(ActivityEmbeddingAppHelper.MAIN_ACTIVITY_COMPONENT) + this.visibleRegion(ActivityEmbeddingAppHelper.MAIN_ACTIVITY_COMPONENT) val secondaryActivityRegion = - this.visibleRegion(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) - .region - mainActivityRegion - .plus(secondaryActivityRegion) - .coversExactly(display.layerStackSpace) + this.visibleRegion(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT).region + mainActivityRegion.plus(secondaryActivityRegion).coversExactly(display.layerStackSpace) } flicker.assertLayersEnd { - val display = this.entry.displays.firstOrNull { it.isOn && !it.isVirtual } + val display = + this.entry.displays.firstOrNull { it.isOn && !it.isVirtual } ?: error("No non-virtual and on display found") val mainActivityRegion = - this.visibleRegion(ActivityEmbeddingAppHelper.MAIN_ACTIVITY_COMPONENT) + this.visibleRegion(ActivityEmbeddingAppHelper.MAIN_ACTIVITY_COMPONENT) val secondaryActivityRegion = - this.visibleRegion(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) + this.visibleRegion(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) secondaryActivityRegion.isEmpty() val thirdActivityRegion = - this.visibleRegion(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) + this.visibleRegion(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) mainActivityRegion - .plus(thirdActivityRegion.region) - .coversExactly(display.layerStackSpace) + .plus(thirdActivityRegion.region) + .coversExactly(display.layerStackSpace) } } @@ -118,13 +114,15 @@ class OpenThirdActivityOverSplitTest (flicker: LegacyFlickerTest) : fun thirdActivityWindowLaunchesIntoSplit() { flicker.assertWm { isAppWindowVisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) - .isAppWindowInvisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) - .then() - .isAppWindowVisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) - .isAppWindowVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) - .then() - .isAppWindowVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) - .isAppWindowInvisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) // expectation + .isAppWindowInvisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) + .then() + .isAppWindowVisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) + .isAppWindowVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) + .then() + .isAppWindowVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) + .isAppWindowInvisible( + ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT + ) // expectation } } @@ -134,13 +132,13 @@ class OpenThirdActivityOverSplitTest (flicker: LegacyFlickerTest) : fun thirdActivityLayerLaunchesIntoSplit() { flicker.assertLayers { isVisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) - .isInvisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) - .then() - .isVisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) - .isVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) - .then() - .isVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) - .isInvisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) + .isInvisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) + .then() + .isVisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) + .isVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) + .then() + .isVisible(ActivityEmbeddingAppHelper.THIRD_ACTIVITY_COMPONENT) + .isInvisible(ActivityEmbeddingAppHelper.SECONDARY_ACTIVITY_COMPONENT) } } @@ -149,9 +147,7 @@ class OpenThirdActivityOverSplitTest (flicker: LegacyFlickerTest) : @Test fun backgroundLayerNeverVisible() { val backgroundColorLayer = ComponentNameMatcher("", "Animation Background") - flicker.assertLayers { - isInvisible(backgroundColorLayer) - } + flicker.assertLayers { isInvisible(backgroundColorLayer) } } companion object { @@ -167,4 +163,4 @@ class OpenThirdActivityOverSplitTest (flicker: LegacyFlickerTest) : @JvmStatic fun getParams() = LegacyFlickerTestFactory.nonRotationTests() } -}
\ No newline at end of file +} diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/rotation/RotateSplitNoChangeTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/rotation/RotateSplitNoChangeTest.kt index 856c9e2abd07..da565001ae10 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/rotation/RotateSplitNoChangeTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/activityembedding/rotation/RotateSplitNoChangeTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.server.wm.flicker.activityembedding +package com.android.server.wm.flicker.activityembedding.rotation import android.platform.test.annotations.Presubmit import android.tools.common.traces.component.ComponentNameMatcher diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/helpers/ActivityEmbeddingAppHelper.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/helpers/ActivityEmbeddingAppHelper.kt index 06beec19cbf0..ced7a1ec368c 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/helpers/ActivityEmbeddingAppHelper.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/helpers/ActivityEmbeddingAppHelper.kt @@ -62,18 +62,18 @@ constructor( /** Clicks the button to launch a third activity over a secondary activity. */ fun launchThirdActivity(wmHelper: WindowManagerStateHelper) { val launchButton = - uiDevice.wait( - Until.findObject(By.res(getPackage(), "launch_third_activity_button")), - FIND_TIMEOUT - ) + uiDevice.wait( + Until.findObject(By.res(getPackage(), "launch_third_activity_button")), + FIND_TIMEOUT + ) require(launchButton != null) { "Can't find launch third activity button on screen." } launchButton.click() wmHelper - .StateSyncBuilder() - .withActivityState(MAIN_ACTIVITY_COMPONENT, PlatformConsts.STATE_RESUMED) - .withActivityState(SECONDARY_ACTIVITY_COMPONENT, PlatformConsts.STATE_STOPPED) - .withActivityState(THIRD_ACTIVITY_COMPONENT, PlatformConsts.STATE_RESUMED) - .waitForAndVerify() + .StateSyncBuilder() + .withActivityState(MAIN_ACTIVITY_COMPONENT, PlatformConsts.STATE_RESUMED) + .withActivityState(SECONDARY_ACTIVITY_COMPONENT, PlatformConsts.STATE_STOPPED) + .withActivityState(THIRD_ACTIVITY_COMPONENT, PlatformConsts.STATE_RESUMED) + .waitForAndVerify() } /** diff --git a/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppFromLockscreenViaIntentTest.kt b/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppFromLockscreenViaIntentTest.kt index 2a2a3db12513..7a16060e3370 100644 --- a/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppFromLockscreenViaIntentTest.kt +++ b/tests/FlickerTests/src/com/android/server/wm/flicker/launch/OpenAppFromLockscreenViaIntentTest.kt @@ -20,8 +20,8 @@ import android.platform.test.annotations.FlakyTest import android.platform.test.annotations.Presubmit import android.tools.common.NavBar import android.tools.common.Rotation -import android.tools.common.traces.component.ComponentNameMatcher import android.tools.common.flicker.annotation.FlickerServiceCompatible +import android.tools.common.traces.component.ComponentNameMatcher import android.tools.device.flicker.junit.FlickerParametersRunnerFactory import android.tools.device.flicker.legacy.LegacyFlickerTest import android.tools.device.flicker.legacy.LegacyFlickerTestFactory |