Make FASS accessible from winscope

Flickerlib has been refactored so that more functionality can be used directly in Winscope.

This will enable us to add an option in winscope to detect transitions for manually
created WM and SF traces, without relying on flicker.

The winscope change is not part of this topic.

This CL updates the tests to reflect this change

Test: atest FlickerTests WMShellFlickerTests
Change-Id: I767e8993b5565af5fdb82eba53fabf8afb865b6e
This commit is contained in:
Nataniel Borges
2021-09-01 19:07:02 +02:00
parent 9256fd81c7
commit aa188ce810
57 changed files with 251 additions and 247 deletions

View File

@@ -16,11 +16,11 @@
package com.android.wm.shell.flicker
import android.content.ComponentName
import android.graphics.Region
import android.view.Surface
import com.android.server.wm.flicker.FlickerTestParameter
import com.android.server.wm.flicker.helpers.WindowUtils
import com.android.server.wm.traces.common.FlickerComponentName
fun FlickerTestParameter.appPairsDividerIsVisibleAtEnd() {
assertLayersEnd {
@@ -72,7 +72,7 @@ fun FlickerTestParameter.dockedStackDividerNotExistsAtEnd() {
fun FlickerTestParameter.appPairsPrimaryBoundsIsVisibleAtEnd(
rotation: Int,
primaryComponent: ComponentName
primaryComponent: FlickerComponentName
) {
assertLayersEnd {
val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region
@@ -83,7 +83,7 @@ fun FlickerTestParameter.appPairsPrimaryBoundsIsVisibleAtEnd(
fun FlickerTestParameter.dockedStackPrimaryBoundsIsVisibleAtEnd(
rotation: Int,
primaryComponent: ComponentName
primaryComponent: FlickerComponentName
) {
assertLayersEnd {
val dividerRegion = layer(DOCKED_STACK_DIVIDER_COMPONENT).visibleRegion.region
@@ -94,7 +94,7 @@ fun FlickerTestParameter.dockedStackPrimaryBoundsIsVisibleAtEnd(
fun FlickerTestParameter.appPairsSecondaryBoundsIsVisibleAtEnd(
rotation: Int,
secondaryComponent: ComponentName
secondaryComponent: FlickerComponentName
) {
assertLayersEnd {
val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region
@@ -105,7 +105,7 @@ fun FlickerTestParameter.appPairsSecondaryBoundsIsVisibleAtEnd(
fun FlickerTestParameter.dockedStackSecondaryBoundsIsVisibleAtEnd(
rotation: Int,
secondaryComponent: ComponentName
secondaryComponent: FlickerComponentName
) {
assertLayersEnd {
val dividerRegion = layer(DOCKED_STACK_DIVIDER_COMPONENT).visibleRegion.region

View File

@@ -17,8 +17,8 @@
@file:JvmName("CommonConstants")
package com.android.wm.shell.flicker
import android.content.ComponentName
import com.android.server.wm.traces.common.FlickerComponentName
const val SYSTEM_UI_PACKAGE_NAME = "com.android.systemui"
val APP_PAIR_SPLIT_DIVIDER_COMPONENT = ComponentName("", "AppPairSplitDivider#")
val DOCKED_STACK_DIVIDER_COMPONENT = ComponentName("", "DockedStackDivider#")
val APP_PAIR_SPLIT_DIVIDER_COMPONENT = FlickerComponentName("", "AppPairSplitDivider#")
val DOCKED_STACK_DIVIDER_COMPONENT = FlickerComponentName("", "DockedStackDivider#")

View File

@@ -38,6 +38,7 @@ import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.wm.shell.flicker.helpers.AppPairsHelper
import com.android.wm.shell.flicker.helpers.BaseAppHelper
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.getDevEnableNonResizableMultiWindow
@@ -55,7 +56,7 @@ abstract class AppPairsTransition(protected val testSpec: FlickerTestParameter)
protected val activityHelper = ActivityHelper.getInstance()
protected val appPairsHelper = AppPairsHelper(instrumentation,
Components.SplitScreenActivity.LABEL,
Components.SplitScreenActivity.COMPONENT)
Components.SplitScreenActivity.COMPONENT.toFlickerComponent())
protected val primaryApp = SplitScreenHelper.getPrimary(instrumentation)
protected val secondaryApp = SplitScreenHelper.getSecondary(instrumentation)

View File

@@ -17,15 +17,15 @@
package com.android.wm.shell.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.graphics.Region
import com.android.server.wm.flicker.Flicker
import com.android.server.wm.flicker.helpers.WindowUtils
import com.android.server.wm.traces.common.FlickerComponentName
class AppPairsHelper(
instrumentation: Instrumentation,
activityLabel: String,
component: ComponentName
component: FlickerComponentName
) : BaseAppHelper(instrumentation, activityLabel, component) {
fun getPrimaryBounds(dividerBounds: Region): android.graphics.Region {
val primaryAppBounds = Region(0, 0, dividerBounds.bounds.right,

View File

@@ -17,7 +17,6 @@
package com.android.wm.shell.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.content.pm.PackageManager.FEATURE_LEANBACK
import android.content.pm.PackageManager.FEATURE_LEANBACK_ONLY
import android.os.SystemProperties
@@ -28,13 +27,13 @@ import androidx.test.uiautomator.UiObject2
import androidx.test.uiautomator.Until
import com.android.compatibility.common.util.SystemUtil
import com.android.server.wm.flicker.helpers.StandardAppHelper
import com.android.server.wm.traces.parser.toWindowName
import com.android.server.wm.traces.common.FlickerComponentName
import java.io.IOException
abstract class BaseAppHelper(
instrumentation: Instrumentation,
launcherName: String,
component: ComponentName
component: FlickerComponentName
) : StandardAppHelper(
instrumentation,
launcherName,

View File

@@ -17,10 +17,11 @@
package com.android.wm.shell.flicker.helpers
import android.app.Instrumentation
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.wm.shell.flicker.testapp.Components
class FixedAppHelper(instrumentation: Instrumentation) : BaseAppHelper(
instrumentation,
Components.FixedActivity.LABEL,
Components.FixedActivity.COMPONENT
Components.FixedActivity.COMPONENT.toFlickerComponent()
)

View File

@@ -21,13 +21,14 @@ import androidx.test.uiautomator.By
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.Until
import com.android.server.wm.flicker.helpers.FIND_TIMEOUT
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.wm.shell.flicker.testapp.Components
open class ImeAppHelper(instrumentation: Instrumentation) : BaseAppHelper(
instrumentation,
Components.ImeActivity.LABEL,
Components.ImeActivity.COMPONENT
Components.ImeActivity.COMPONENT.toFlickerComponent()
) {
/**
* Opens the IME and wait for it to be displayed

View File

@@ -17,14 +17,14 @@
package com.android.wm.shell.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.content.Context
import android.provider.Settings
import com.android.server.wm.traces.common.FlickerComponentName
class MultiWindowHelper(
instrumentation: Instrumentation,
activityLabel: String,
componentsInfo: ComponentName
componentsInfo: FlickerComponentName
) : BaseAppHelper(instrumentation, activityLabel, componentsInfo) {
companion object {

View File

@@ -26,6 +26,7 @@ import androidx.test.uiautomator.BySelector
import androidx.test.uiautomator.Until
import com.android.server.wm.flicker.helpers.FIND_TIMEOUT
import com.android.server.wm.flicker.helpers.SYSTEMUI_PACKAGE
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.wm.shell.flicker.pip.tv.closeTvPipWindow
import com.android.wm.shell.flicker.pip.tv.isFocusedOrHasFocusedChild
@@ -34,7 +35,7 @@ import com.android.wm.shell.flicker.testapp.Components
class PipAppHelper(instrumentation: Instrumentation) : BaseAppHelper(
instrumentation,
Components.PipActivity.LABEL,
Components.PipActivity.COMPONENT
Components.PipActivity.COMPONENT.toFlickerComponent()
) {
private val mediaSessionManager: MediaSessionManager
get() = context.getSystemService(MediaSessionManager::class.java)

View File

@@ -17,10 +17,11 @@
package com.android.wm.shell.flicker.helpers
import android.app.Instrumentation
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.wm.shell.flicker.testapp.Components
class SimpleAppHelper(instrumentation: Instrumentation) : BaseAppHelper(
instrumentation,
Components.SimpleActivity.LABEL,
Components.SimpleActivity.COMPONENT
Components.SimpleActivity.COMPONENT.toFlickerComponent()
)

View File

@@ -17,14 +17,15 @@
package com.android.wm.shell.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.content.res.Resources
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.wm.shell.flicker.testapp.Components
class SplitScreenHelper(
instrumentation: Instrumentation,
activityLabel: String,
componentsInfo: ComponentName
componentsInfo: FlickerComponentName
) : BaseAppHelper(instrumentation, activityLabel, componentsInfo) {
companion object {
@@ -39,16 +40,16 @@ class SplitScreenHelper(
fun getPrimary(instrumentation: Instrumentation): SplitScreenHelper =
SplitScreenHelper(instrumentation,
Components.SplitScreenActivity.LABEL,
Components.SplitScreenActivity.COMPONENT)
Components.SplitScreenActivity.COMPONENT.toFlickerComponent())
fun getSecondary(instrumentation: Instrumentation): SplitScreenHelper =
SplitScreenHelper(instrumentation,
Components.SplitScreenSecondaryActivity.LABEL,
Components.SplitScreenSecondaryActivity.COMPONENT)
Components.SplitScreenSecondaryActivity.COMPONENT.toFlickerComponent())
fun getNonResizeable(instrumentation: Instrumentation): SplitScreenHelper =
SplitScreenHelper(instrumentation,
Components.NonResizeableActivity.LABEL,
Components.NonResizeableActivity.COMPONENT)
Components.NonResizeableActivity.COMPONENT.toFlickerComponent())
}
}

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import android.view.WindowManagerPolicyConstants
@@ -31,7 +30,7 @@ import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.dockedStackDividerBecomesVisible
import com.android.wm.shell.flicker.dockedStackPrimaryBoundsIsVisibleAtEnd
import com.android.wm.shell.flicker.helpers.SplitScreenHelper
@@ -62,10 +61,10 @@ class EnterSplitScreenDockActivity(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT, LIVE_WALLPAPER_COMPONENT,
splitScreenApp.component, WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT, LAUNCHER_COMPONENT)
splitScreenApp.component, FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT, LAUNCHER_COMPONENT)
@Presubmit
@Test

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.RequiresDevice
@@ -26,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group4
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.dockedStackDividerIsVisibleAtEnd
import com.android.wm.shell.flicker.helpers.SplitScreenHelper
import org.junit.FixMethodOrder
@@ -64,10 +63,10 @@ class EnterSplitScreenFromDetachedRecentTask(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT,
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT,
splitScreenApp.component)
@Presubmit

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.RequiresDevice
@@ -30,7 +29,7 @@ import com.android.server.wm.flicker.helpers.reopenAppFromOverview
import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.dockedStackDividerBecomesVisible
import com.android.wm.shell.flicker.dockedStackPrimaryBoundsIsVisibleAtEnd
import com.android.wm.shell.flicker.dockedStackSecondaryBoundsIsVisibleAtEnd
@@ -62,10 +61,10 @@ class EnterSplitScreenLaunchToSide(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT, splitScreenApp.component,
secondaryApp.component, WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
secondaryApp.component, FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
@Presubmit
@Test

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.RequiresDevice
@@ -26,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group4
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.canSplitScreen
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.dockedStackDividerNotExistsAtEnd
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.setSupportsNonResizableMultiWindow
@@ -71,10 +70,10 @@ class EnterSplitScreenNotSupportNonResizable(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT,
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT,
nonResizeableApp.component,
splitScreenApp.component)

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.RequiresDevice
@@ -26,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group2
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.dockedStackDividerIsVisibleAtEnd
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.setSupportsNonResizableMultiWindow
@@ -68,12 +67,12 @@ class EnterSplitScreenSupportNonResizable(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT,
nonResizeableApp.component,
splitScreenApp.component)
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT,
nonResizeableApp.component,
splitScreenApp.component)
@Before
override fun setup() {

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Postsubmit
import android.view.Surface
import androidx.test.filters.FlakyTest
@@ -30,7 +29,7 @@ import com.android.server.wm.flicker.helpers.exitSplitScreenFromBottom
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.DOCKED_STACK_DIVIDER_COMPONENT
import com.android.wm.shell.flicker.helpers.SplitScreenHelper
import org.junit.FixMethodOrder
@@ -70,10 +69,10 @@ class ExitLegacySplitScreenFromBottom(
}
}
override val ignoredWindows: List<ComponentName>
get() = listOf(LAUNCHER_COMPONENT, WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT, FlickerComponentName.SPLASH_SCREEN,
splitScreenApp.component, secondaryApp.component,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
FlickerComponentName.SNAPSHOT)
@Postsubmit
@Test

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.FlakyTest
@@ -30,7 +29,7 @@ import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.flicker.helpers.reopenAppFromOverview
import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.dockedStackDividerNotExistsAtEnd
import com.android.wm.shell.flicker.helpers.SplitScreenHelper
import org.junit.FixMethodOrder
@@ -70,10 +69,10 @@ class ExitPrimarySplitScreenShowSecondaryFullscreen(
}
}
override val ignoredWindows: List<ComponentName>
get() = listOf(LAUNCHER_COMPONENT, WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT, FlickerComponentName.SPLASH_SCREEN,
splitScreenApp.component, secondaryApp.component,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
FlickerComponentName.SNAPSHOT)
@Presubmit
@Test

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.RequiresDevice
@@ -26,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group2
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.DOCKED_STACK_DIVIDER_COMPONENT
import com.android.wm.shell.flicker.dockedStackDividerNotExistsAtEnd
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig
@@ -69,11 +68,11 @@ class LegacySplitScreenFromIntentNotSupportNonResizable(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(DOCKED_STACK_DIVIDER_COMPONENT, LAUNCHER_COMPONENT, LETTERBOX_COMPONENT,
nonResizeableApp.component, splitScreenApp.component,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
nonResizeableApp.component, splitScreenApp.component,
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
@Before
override fun setup() {

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.RequiresDevice
@@ -26,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group2
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.DOCKED_STACK_DIVIDER_COMPONENT
import com.android.wm.shell.flicker.dockedStackDividerIsVisibleAtEnd
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig
@@ -69,11 +68,11 @@ class LegacySplitScreenFromIntentSupportNonResizable(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(DOCKED_STACK_DIVIDER_COMPONENT, LAUNCHER_COMPONENT, LETTERBOX_COMPONENT,
nonResizeableApp.component, splitScreenApp.component,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
@Before
override fun setup() {

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Postsubmit
import android.platform.test.annotations.Presubmit
import android.view.Surface
@@ -28,7 +27,7 @@ import com.android.server.wm.flicker.annotation.Group2
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.flicker.helpers.reopenAppFromOverview
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.DOCKED_STACK_DIVIDER_COMPONENT
import com.android.wm.shell.flicker.dockedStackDividerNotExistsAtEnd
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig
@@ -71,11 +70,11 @@ class LegacySplitScreenFromRecentNotSupportNonResizable(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(DOCKED_STACK_DIVIDER_COMPONENT, LAUNCHER_COMPONENT, LETTERBOX_COMPONENT,
TOAST_COMPONENT, splitScreenApp.component, nonResizeableApp.component,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
TOAST_COMPONENT, splitScreenApp.component, nonResizeableApp.component,
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
@Before
override fun setup() {

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.RequiresDevice
@@ -27,7 +26,7 @@ import com.android.server.wm.flicker.annotation.Group2
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.flicker.helpers.reopenAppFromOverview
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.DOCKED_STACK_DIVIDER_COMPONENT
import com.android.wm.shell.flicker.dockedStackDividerIsVisibleAtEnd
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig
@@ -70,11 +69,11 @@ class LegacySplitScreenFromRecentSupportNonResizable(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(DOCKED_STACK_DIVIDER_COMPONENT, LAUNCHER_COMPONENT, LETTERBOX_COMPONENT,
TOAST_COMPONENT, splitScreenApp.component, nonResizeableApp.component,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
TOAST_COMPONENT, splitScreenApp.component, nonResizeableApp.component,
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
@Before
override fun setup() {

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Postsubmit
import android.platform.test.annotations.Presubmit
import android.view.Surface
@@ -39,7 +38,7 @@ import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.dockedStackDividerBecomesInvisible
import com.android.wm.shell.flicker.helpers.SimpleAppHelper
import org.junit.FixMethodOrder
@@ -86,9 +85,9 @@ class LegacySplitScreenToLauncher(
}
}
override val ignoredWindows: List<ComponentName>
get() = listOf(LAUNCHER_COMPONENT, WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT, FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
@Presubmit
@Test

View File

@@ -17,7 +17,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.app.Instrumentation
import android.content.ComponentName
import android.content.Context
import android.support.test.launcherhelper.LauncherStrategyFactory
import android.view.Surface
@@ -32,7 +31,7 @@ import com.android.server.wm.flicker.helpers.setRotation
import com.android.server.wm.flicker.helpers.wakeUpAndGoToHomeScreen
import com.android.server.wm.flicker.repetitions
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.helpers.BaseAppHelper.Companion.isShellTransitionsEnabled
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.getDevEnableNonResizableMultiWindow
import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.setDevEnableNonResizableMultiWindow
@@ -50,7 +49,7 @@ abstract class LegacySplitScreenTransition(protected val testSpec: FlickerTestPa
protected val splitScreenApp = SplitScreenHelper.getPrimary(instrumentation)
protected val secondaryApp = SplitScreenHelper.getSecondary(instrumentation)
protected val nonResizeableApp = SplitScreenHelper.getNonResizeable(instrumentation)
protected val LAUNCHER_COMPONENT = ComponentName("",
protected val LAUNCHER_COMPONENT = FlickerComponentName("",
LauncherStrategyFactory.getInstance(instrumentation)
.launcherStrategy.supportedLauncherPackage)
private var prevDevEnableNonResizableMultiWindow = 0
@@ -79,9 +78,9 @@ abstract class LegacySplitScreenTransition(protected val testSpec: FlickerTestPa
*
* b/182720234
*/
open val ignoredWindows: List<ComponentName> = listOf(
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
open val ignoredWindows: List<FlickerComponentName> = listOf(
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
protected open val transition: FlickerBuilder.(Map<String, Any?>) -> Unit
get() = { configuration ->
@@ -148,9 +147,9 @@ abstract class LegacySplitScreenTransition(protected val testSpec: FlickerTestPa
}
companion object {
internal val LIVE_WALLPAPER_COMPONENT = ComponentName("",
internal val LIVE_WALLPAPER_COMPONENT = FlickerComponentName("",
"com.breel.wallpapers18.soundviz.wallpaper.variations.SoundVizWallpaperV2")
internal val LETTERBOX_COMPONENT = ComponentName("", "Letterbox")
internal val TOAST_COMPONENT = ComponentName("", "Toast")
internal val LETTERBOX_COMPONENT = FlickerComponentName("", "Letterbox")
internal val TOAST_COMPONENT = FlickerComponentName("", "Toast")
}
}

View File

@@ -16,7 +16,6 @@
package com.android.wm.shell.flicker.legacysplitscreen
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import androidx.test.filters.FlakyTest
@@ -29,7 +28,7 @@ import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.entireScreenCovered
import com.android.server.wm.flicker.helpers.launchSplitScreen
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.appPairsDividerBecomesVisible
import com.android.wm.shell.flicker.helpers.SplitScreenHelper
import org.junit.FixMethodOrder
@@ -59,10 +58,10 @@ class OpenAppToLegacySplitScreen(
}
}
override val ignoredWindows: List<ComponentName>
override val ignoredWindows: List<FlickerComponentName>
get() = listOf(LAUNCHER_COMPONENT, splitScreenApp.component,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT)
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT)
@FlakyTest
@Test

View File

@@ -42,6 +42,7 @@ import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.wm.shell.flicker.DOCKED_STACK_DIVIDER_COMPONENT
import com.android.wm.shell.flicker.helpers.SimpleAppHelper
import com.android.wm.shell.flicker.testapp.Components
@@ -110,7 +111,7 @@ class ResizeLegacySplitScreen(
@Test
fun topAppWindowIsAlwaysVisible() {
testSpec.assertWm {
this.isAppWindowVisible(Components.SimpleActivity.COMPONENT)
this.isAppWindowVisible(Components.SimpleActivity.COMPONENT.toFlickerComponent())
}
}
@@ -118,7 +119,7 @@ class ResizeLegacySplitScreen(
@Test
fun bottomAppWindowIsAlwaysVisible() {
testSpec.assertWm {
this.isAppWindowVisible(Components.ImeActivity.COMPONENT)
this.isAppWindowVisible(Components.ImeActivity.COMPONENT.toFlickerComponent())
}
}
@@ -142,14 +143,14 @@ class ResizeLegacySplitScreen(
@Test
fun topAppLayerIsAlwaysVisible() {
testSpec.assertLayers {
this.isVisible(Components.SimpleActivity.COMPONENT)
this.isVisible(Components.SimpleActivity.COMPONENT.toFlickerComponent())
}
}
@Test
fun bottomAppLayerIsAlwaysVisible() {
testSpec.assertLayers {
this.isVisible(Components.ImeActivity.COMPONENT)
this.isVisible(Components.ImeActivity.COMPONENT.toFlickerComponent())
}
}
@@ -174,8 +175,10 @@ class ResizeLegacySplitScreen(
dividerBounds.bottom - WindowUtils.dockedStackDividerInset,
displayBounds.right,
displayBounds.bottom - WindowUtils.navigationBarHeight)
visibleRegion(Components.SimpleActivity.COMPONENT).coversExactly(topAppBounds)
visibleRegion(Components.ImeActivity.COMPONENT).coversExactly(bottomAppBounds)
visibleRegion(Components.SimpleActivity.COMPONENT.toFlickerComponent())
.coversExactly(topAppBounds)
visibleRegion(Components.ImeActivity.COMPONENT.toFlickerComponent())
.coversExactly(bottomAppBounds)
}
}
@@ -194,8 +197,10 @@ class ResizeLegacySplitScreen(
displayBounds.right,
displayBounds.bottom - WindowUtils.navigationBarHeight)
visibleRegion(Components.SimpleActivity.COMPONENT).coversExactly(topAppBounds)
visibleRegion(Components.ImeActivity.COMPONENT).coversExactly(bottomAppBounds)
visibleRegion(Components.SimpleActivity.COMPONENT.toFlickerComponent())
.coversExactly(topAppBounds)
visibleRegion(Components.ImeActivity.COMPONENT.toFlickerComponent())
.coversExactly(bottomAppBounds)
}
}

View File

@@ -26,7 +26,6 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.LAUNCHER_COMPONENT
import com.android.server.wm.flicker.annotation.Group3
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.traces.parser.toLayerName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith

View File

@@ -29,7 +29,7 @@ import com.android.server.wm.flicker.entireScreenCovered
import com.android.server.wm.flicker.helpers.WindowUtils
import com.android.server.wm.flicker.navBarLayerRotatesAndScales
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.helpers.FixedAppHelper
import com.android.wm.shell.flicker.pip.PipTransition.BroadcastActionTrigger.Companion.ORIENTATION_LANDSCAPE
import com.android.wm.shell.flicker.pip.PipTransition.BroadcastActionTrigger.Companion.ORIENTATION_PORTRAIT
@@ -106,7 +106,7 @@ class EnterPipToOtherOrientationTest(
}
/**
* Checks that the [WindowManagerStateHelper.NAV_BAR_COMPONENT] has the correct position at
* Checks that the [FlickerComponentName.NAV_BAR] has the correct position at
* the start and end of the transition
*/
@FlakyTest
@@ -115,7 +115,7 @@ class EnterPipToOtherOrientationTest(
testSpec.navBarLayerRotatesAndScales(Surface.ROTATION_90, Surface.ROTATION_0)
/**
* Checks that the [WindowManagerStateHelper.STATUS_BAR_COMPONENT] has the correct position at
* Checks that the [FlickerComponentName.STATUS_BAR] has the correct position at
* the start and end of the transition
*/
@Presubmit

View File

@@ -18,7 +18,6 @@ package com.android.wm.shell.flicker.pip
import android.platform.test.annotations.Presubmit
import com.android.server.wm.flicker.FlickerTestParameter
import com.android.server.wm.traces.parser.toLayerName
import com.android.wm.shell.flicker.helpers.FixedAppHelper
import org.junit.Test

View File

@@ -23,7 +23,6 @@ import com.android.server.wm.flicker.FlickerTestParameter
import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group3
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.traces.parser.toWindowName
import org.junit.FixMethodOrder
import org.junit.runner.RunWith
import org.junit.runners.MethodSorters

View File

@@ -23,7 +23,6 @@ import com.android.server.wm.flicker.FlickerTestParameter
import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group3
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.traces.parser.toWindowName
import org.junit.FixMethodOrder
import org.junit.runner.RunWith
import org.junit.runners.MethodSorters

View File

@@ -27,7 +27,6 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.LAUNCHER_COMPONENT
import com.android.server.wm.flicker.annotation.Group3
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.traces.parser.toLayerName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith

View File

@@ -20,8 +20,6 @@ import android.platform.test.annotations.Presubmit
import com.android.launcher3.tapl.LauncherInstrumentation
import com.android.server.wm.flicker.FlickerTestParameter
import com.android.server.wm.flicker.traces.RegionSubject
import com.android.server.wm.traces.parser.toLayerName
import com.android.server.wm.traces.parser.toWindowName
import com.android.wm.shell.flicker.helpers.FixedAppHelper
import org.junit.Test

View File

@@ -27,7 +27,7 @@ import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.WindowUtils
import com.android.server.wm.flicker.helpers.setRotation
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.wm.shell.flicker.helpers.ImeAppHelper
import org.junit.FixMethodOrder
import org.junit.Test
@@ -90,7 +90,7 @@ class PipKeyboardTest(testSpec: FlickerTestParameter) : PipTransition(testSpec)
@Test
fun pipIsAboveAppWindow() {
testSpec.assertWmTag(TAG_IME_VISIBLE) {
isAboveWindow(WindowManagerStateHelper.IME_COMPONENT, pipApp.component)
isAboveWindow(FlickerComponentName.IME, pipApp.component)
}
}

View File

@@ -17,22 +17,21 @@
@file:JvmName("CommonAssertions")
package com.android.server.wm.flicker
import android.content.ComponentName
import com.android.server.wm.flicker.helpers.WindowUtils
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
val LAUNCHER_COMPONENT = ComponentName("com.google.android.apps.nexuslauncher",
val LAUNCHER_COMPONENT = FlickerComponentName("com.google.android.apps.nexuslauncher",
"com.google.android.apps.nexuslauncher.NexusLauncherActivity")
fun FlickerTestParameter.statusBarWindowIsVisible() {
assertWm {
this.isAboveAppWindowVisible(WindowManagerStateHelper.STATUS_BAR_COMPONENT)
this.isAboveAppWindowVisible(FlickerComponentName.STATUS_BAR)
}
}
fun FlickerTestParameter.navBarWindowIsVisible() {
assertWm {
this.isAboveAppWindowVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
this.isAboveAppWindowVisible(FlickerComponentName.NAV_BAR)
}
}
@@ -71,19 +70,19 @@ fun FlickerTestParameter.entireScreenCovered(allStates: Boolean = true) {
fun FlickerTestParameter.navBarLayerIsVisible() {
assertLayersStart {
this.isVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
this.isVisible(FlickerComponentName.NAV_BAR)
}
assertLayersEnd {
this.isVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
this.isVisible(FlickerComponentName.NAV_BAR)
}
}
fun FlickerTestParameter.statusBarLayerIsVisible() {
assertLayersStart {
this.isVisible(WindowManagerStateHelper.STATUS_BAR_COMPONENT)
this.isVisible(FlickerComponentName.STATUS_BAR)
}
assertLayersEnd {
this.isVisible(WindowManagerStateHelper.STATUS_BAR_COMPONENT)
this.isVisible(FlickerComponentName.STATUS_BAR)
}
}
@@ -96,10 +95,10 @@ fun FlickerTestParameter.navBarLayerRotatesAndScales(
val endingPos = WindowUtils.getNavigationBarPosition(endRotation)
assertLayersStart {
this.visibleRegion(WindowManagerStateHelper.NAV_BAR_COMPONENT).coversExactly(startingPos)
this.visibleRegion(FlickerComponentName.NAV_BAR).coversExactly(startingPos)
}
assertLayersEnd {
this.visibleRegion(WindowManagerStateHelper.NAV_BAR_COMPONENT).coversExactly(endingPos)
this.visibleRegion(FlickerComponentName.NAV_BAR).coversExactly(endingPos)
}
}
@@ -112,10 +111,10 @@ fun FlickerTestParameter.statusBarLayerRotatesScales(
val endingPos = WindowUtils.getStatusBarPosition(endRotation)
assertLayersStart {
this.visibleRegion(WindowManagerStateHelper.STATUS_BAR_COMPONENT).coversExactly(startingPos)
this.visibleRegion(FlickerComponentName.STATUS_BAR).coversExactly(startingPos)
}
assertLayersEnd {
this.visibleRegion(WindowManagerStateHelper.STATUS_BAR_COMPONENT).coversExactly(endingPos)
this.visibleRegion(FlickerComponentName.STATUS_BAR).coversExactly(endingPos)
}
}
@@ -132,15 +131,15 @@ fun FlickerTestParameter.statusBarLayerRotatesScales(
* (useful mostly for app launch)
*/
fun FlickerTestParameter.replacesLayer(
originalLayer: ComponentName,
newLayer: ComponentName,
originalLayer: FlickerComponentName,
newLayer: FlickerComponentName,
ignoreSnapshot: Boolean = false
) {
assertLayers {
val assertion = this.isVisible(originalLayer)
if (ignoreSnapshot) {
assertion.then()
.isVisible(WindowManagerStateHelper.SNAPSHOT_COMPONENT, isOptional = true)
.isVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
}
assertion.then().isVisible(newLayer)
}

View File

@@ -17,9 +17,10 @@
package com.android.server.wm.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import androidx.test.uiautomator.UiDevice
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
class ImeAppAutoFocusHelper @JvmOverloads constructor(
@@ -27,7 +28,8 @@ class ImeAppAutoFocusHelper @JvmOverloads constructor(
private val rotation: Int,
private val imePackageName: String = IME_PACKAGE,
launcherName: String = ActivityOptions.IME_ACTIVITY_AUTO_FOCUS_LAUNCHER_NAME,
component: ComponentName = ActivityOptions.IME_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME
component: FlickerComponentName =
ActivityOptions.IME_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME.toFlickerComponent()
) : ImeAppHelper(instr, launcherName, component) {
override fun openIME(
device: UiDevice,

View File

@@ -17,19 +17,21 @@
package com.android.server.wm.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.support.test.launcherhelper.ILauncherStrategy
import android.support.test.launcherhelper.LauncherStrategyFactory
import androidx.test.uiautomator.By
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.Until
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
open class ImeAppHelper @JvmOverloads constructor(
instr: Instrumentation,
launcherName: String = ActivityOptions.IME_ACTIVITY_LAUNCHER_NAME,
component: ComponentName = ActivityOptions.IME_ACTIVITY_COMPONENT_NAME,
component: FlickerComponentName =
ActivityOptions.IME_ACTIVITY_COMPONENT_NAME.toFlickerComponent(),
launcherStrategy: ILauncherStrategy = LauncherStrategyFactory
.getInstance(instr)
.launcherStrategy

View File

@@ -17,15 +17,17 @@
package com.android.server.wm.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.support.test.launcherhelper.ILauncherStrategy
import android.support.test.launcherhelper.LauncherStrategyFactory
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.server.wm.traces.parser.toFlickerComponent
class NonResizeableAppHelper @JvmOverloads constructor(
instr: Instrumentation,
launcherName: String = ActivityOptions.NON_RESIZEABLE_ACTIVITY_LAUNCHER_NAME,
component: ComponentName = ActivityOptions.NON_RESIZEABLE_ACTIVITY_COMPONENT_NAME,
component: FlickerComponentName =
ActivityOptions.NON_RESIZEABLE_ACTIVITY_COMPONENT_NAME.toFlickerComponent(),
launcherStrategy: ILauncherStrategy = LauncherStrategyFactory
.getInstance(instr)
.launcherStrategy

View File

@@ -17,15 +17,17 @@
package com.android.server.wm.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.support.test.launcherhelper.ILauncherStrategy
import android.support.test.launcherhelper.LauncherStrategyFactory
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.server.wm.traces.parser.toFlickerComponent
class SeamlessRotationAppHelper @JvmOverloads constructor(
instr: Instrumentation,
launcherName: String = ActivityOptions.SEAMLESS_ACTIVITY_LAUNCHER_NAME,
component: ComponentName = ActivityOptions.SEAMLESS_ACTIVITY_COMPONENT_NAME,
component: FlickerComponentName =
ActivityOptions.SEAMLESS_ACTIVITY_COMPONENT_NAME.toFlickerComponent(),
launcherStrategy: ILauncherStrategy = LauncherStrategyFactory
.getInstance(instr)
.launcherStrategy

View File

@@ -17,15 +17,17 @@
package com.android.server.wm.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.support.test.launcherhelper.ILauncherStrategy
import android.support.test.launcherhelper.LauncherStrategyFactory
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.server.wm.traces.parser.toFlickerComponent
class SimpleAppHelper @JvmOverloads constructor(
instr: Instrumentation,
launcherName: String = ActivityOptions.SIMPLE_ACTIVITY_LAUNCHER_NAME,
component: ComponentName = ActivityOptions.SIMPLE_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME,
component: FlickerComponentName =
ActivityOptions.SIMPLE_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME.toFlickerComponent(),
launcherStrategy: ILauncherStrategy = LauncherStrategyFactory
.getInstance(instr)
.launcherStrategy

View File

@@ -17,19 +17,21 @@
package com.android.server.wm.flicker.helpers
import android.app.Instrumentation
import android.content.ComponentName
import android.support.test.launcherhelper.ILauncherStrategy
import android.support.test.launcherhelper.LauncherStrategyFactory
import androidx.test.uiautomator.By
import androidx.test.uiautomator.UiDevice
import androidx.test.uiautomator.Until
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.common.FlickerComponentName
import com.android.server.wm.traces.parser.toFlickerComponent
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
class TwoActivitiesAppHelper @JvmOverloads constructor(
instr: Instrumentation,
launcherName: String = ActivityOptions.BUTTON_ACTIVITY_LAUNCHER_NAME,
component: ComponentName = ActivityOptions.BUTTON_ACTIVITY_COMPONENT_NAME,
component: FlickerComponentName =
ActivityOptions.BUTTON_ACTIVITY_COMPONENT_NAME.toFlickerComponent(),
launcherStrategy: ILauncherStrategy = LauncherStrategyFactory
.getInstance(instr)
.launcherStrategy

View File

@@ -37,7 +37,7 @@ import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -125,7 +125,7 @@ class CloseImeAutoOpenWindowToAppTest(private val testSpec: FlickerTestParameter
@Test
fun imeLayerVisibleStart() {
testSpec.assertLayersStart {
this.isVisible(WindowManagerStateHelper.IME_COMPONENT)
this.isVisible(FlickerComponentName.IME)
}
}
@@ -133,7 +133,7 @@ class CloseImeAutoOpenWindowToAppTest(private val testSpec: FlickerTestParameter
@Test
fun imeLayerInvisibleEnd() {
testSpec.assertLayersEnd {
this.isInvisible(WindowManagerStateHelper.IME_COMPONENT)
this.isInvisible(FlickerComponentName.IME)
}
}

View File

@@ -38,7 +38,7 @@ import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -122,7 +122,7 @@ class CloseImeAutoOpenWindowToHomeTest(private val testSpec: FlickerTestParamete
@Test
fun imeLayerVisibleStart() {
testSpec.assertLayersStart {
this.isVisible(WindowManagerStateHelper.IME_COMPONENT)
this.isVisible(FlickerComponentName.IME)
}
}
@@ -130,7 +130,7 @@ class CloseImeAutoOpenWindowToHomeTest(private val testSpec: FlickerTestParamete
@Test
fun imeLayerInvisibleEnd() {
testSpec.assertLayersEnd {
this.isInvisible(WindowManagerStateHelper.IME_COMPONENT)
this.isInvisible(FlickerComponentName.IME)
}
}
@@ -173,8 +173,8 @@ class CloseImeAutoOpenWindowToHomeTest(private val testSpec: FlickerTestParamete
fun visibleLayersShownMoreThanOneConsecutiveEntry() {
testSpec.assertLayers {
this.visibleLayersShownMoreThanOneConsecutiveEntry(listOf(
WindowManagerStateHelper.IME_COMPONENT,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT))
FlickerComponentName.IME,
FlickerComponentName.SPLASH_SCREEN))
}
}

View File

@@ -35,8 +35,8 @@ import com.android.server.wm.flicker.entireScreenCovered
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.Assume
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -91,9 +91,9 @@ class CloseImeWindowToAppTest(private val testSpec: FlickerTestParameter) {
fun visibleWindowsShownMoreThanOneConsecutiveEntry() {
testSpec.assertWm {
this.visibleWindowsShownMoreThanOneConsecutiveEntry(listOf(
WindowManagerStateHelper.IME_COMPONENT,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT))
FlickerComponentName.IME,
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT))
}
}

View File

@@ -37,7 +37,7 @@ import com.android.server.wm.flicker.entireScreenCovered
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -95,9 +95,9 @@ class CloseImeWindowToHomeTest(private val testSpec: FlickerTestParameter) {
fun visibleWindowsShownMoreThanOneConsecutiveEntry() {
testSpec.assertWm {
this.visibleWindowsShownMoreThanOneConsecutiveEntry(listOf(
WindowManagerStateHelper.IME_COMPONENT,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT))
FlickerComponentName.IME,
FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT))
}
}
@@ -157,8 +157,8 @@ class CloseImeWindowToHomeTest(private val testSpec: FlickerTestParameter) {
fun visibleLayersShownMoreThanOneConsecutiveEntry() {
testSpec.assertLayers {
this.visibleLayersShownMoreThanOneConsecutiveEntry(listOf(
WindowManagerStateHelper.IME_COMPONENT,
WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT))
FlickerComponentName.IME,
FlickerComponentName.SPLASH_SCREEN))
}
}

View File

@@ -18,52 +18,52 @@
package com.android.server.wm.flicker.ime
import com.android.server.wm.flicker.FlickerTestParameter
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
fun FlickerTestParameter.imeLayerBecomesVisible() {
assertLayers {
this.isInvisible(WindowManagerStateHelper.IME_COMPONENT)
this.isInvisible(FlickerComponentName.IME)
.then()
.isVisible(WindowManagerStateHelper.IME_COMPONENT)
.isVisible(FlickerComponentName.IME)
}
}
fun FlickerTestParameter.imeLayerBecomesInvisible() {
assertLayers {
this.isVisible(WindowManagerStateHelper.IME_COMPONENT)
this.isVisible(FlickerComponentName.IME)
.then()
.isInvisible(WindowManagerStateHelper.IME_COMPONENT)
.isInvisible(FlickerComponentName.IME)
}
}
fun FlickerTestParameter.imeWindowIsAlwaysVisible(rotatesScreen: Boolean = false) {
if (rotatesScreen) {
assertWm {
this.isNonAppWindowVisible(WindowManagerStateHelper.IME_COMPONENT)
this.isNonAppWindowVisible(FlickerComponentName.IME)
.then()
.isNonAppWindowInvisible(WindowManagerStateHelper.IME_COMPONENT)
.isNonAppWindowInvisible(FlickerComponentName.IME)
.then()
.isNonAppWindowVisible(WindowManagerStateHelper.IME_COMPONENT)
.isNonAppWindowVisible(FlickerComponentName.IME)
}
} else {
assertWm {
this.isNonAppWindowVisible(WindowManagerStateHelper.IME_COMPONENT)
this.isNonAppWindowVisible(FlickerComponentName.IME)
}
}
}
fun FlickerTestParameter.imeWindowBecomesVisible() {
assertWm {
this.isNonAppWindowInvisible(WindowManagerStateHelper.IME_COMPONENT)
this.isNonAppWindowInvisible(FlickerComponentName.IME)
.then()
.isNonAppWindowVisible(WindowManagerStateHelper.IME_COMPONENT)
.isNonAppWindowVisible(FlickerComponentName.IME)
}
}
fun FlickerTestParameter.imeWindowBecomesInvisible() {
assertWm {
this.isNonAppWindowVisible(WindowManagerStateHelper.IME_COMPONENT)
this.isNonAppWindowVisible(FlickerComponentName.IME)
.then()
.isNonAppWindowInvisible(WindowManagerStateHelper.IME_COMPONENT)
.isNonAppWindowInvisible(FlickerComponentName.IME)
}
}

View File

@@ -17,7 +17,6 @@
package com.android.server.wm.flicker.ime
import android.app.Instrumentation
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import android.view.WindowManagerPolicyConstants
@@ -42,7 +41,7 @@ import com.android.server.wm.flicker.endRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -100,12 +99,12 @@ class ReOpenImeWindowTest(private val testSpec: FlickerTestParameter) {
@Presubmit
@Test
fun visibleWindowsShownMoreThanOneConsecutiveEntry() {
val component = ComponentName("", "RecentTaskScreenshotSurface")
val component = FlickerComponentName("", "RecentTaskScreenshotSurface")
testSpec.assertWm {
this.visibleWindowsShownMoreThanOneConsecutiveEntry(
ignoreWindows = listOf(WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT,
component)
ignoreWindows = listOf(FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT,
component)
)
}
}
@@ -157,11 +156,11 @@ class ReOpenImeWindowTest(private val testSpec: FlickerTestParameter) {
@Test
fun imeLayerIsBecomesVisible() {
testSpec.assertLayers {
this.isVisible(WindowManagerStateHelper.IME_COMPONENT)
this.isVisible(FlickerComponentName.IME)
.then()
.isInvisible(WindowManagerStateHelper.IME_COMPONENT)
.isInvisible(FlickerComponentName.IME)
.then()
.isVisible(WindowManagerStateHelper.IME_COMPONENT)
.isVisible(FlickerComponentName.IME)
}
}
@@ -171,7 +170,7 @@ class ReOpenImeWindowTest(private val testSpec: FlickerTestParameter) {
testSpec.assertLayers {
this.isVisible(LAUNCHER_COMPONENT)
.then()
.isVisible(WindowManagerStateHelper.SNAPSHOT_COMPONENT, isOptional = true)
.isVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isVisible(testApp.component)
}
@@ -194,11 +193,11 @@ class ReOpenImeWindowTest(private val testSpec: FlickerTestParameter) {
fun visibleLayersShownMoreThanOneConsecutiveEntry() {
// depends on how much of the animation transactions are sent to SF at once
// sometimes this layer appears for 2-3 frames, sometimes for only 1
val recentTaskComponent = ComponentName("", "RecentTaskScreenshotSurface")
val recentTaskComponent = FlickerComponentName("", "RecentTaskScreenshotSurface")
testSpec.assertLayers {
this.visibleLayersShownMoreThanOneConsecutiveEntry(
listOf(WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT, recentTaskComponent)
listOf(FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT, recentTaskComponent)
)
}
}

View File

@@ -17,7 +17,6 @@
package com.android.server.wm.flicker.ime
import android.app.Instrumentation
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import android.view.Surface
import android.view.WindowManagerPolicyConstants
@@ -36,7 +35,7 @@ import com.android.server.wm.flicker.helpers.setRotation
import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
@@ -107,7 +106,7 @@ class SwitchImeWindowsFromGestureNavTest(private val testSpec: FlickerTestParame
@Test
fun imeAppWindowVisibility() {
val component = ComponentName(imeTestApp.`package`, "")
val component = FlickerComponentName(imeTestApp.`package`, "")
testSpec.assertWm {
this.isAppWindowOnTop(component)
.then()
@@ -118,40 +117,40 @@ class SwitchImeWindowsFromGestureNavTest(private val testSpec: FlickerTestParame
@Test
fun navBarLayerIsVisibleAroundSwitching() {
testSpec.assertLayersStart {
isVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
isVisible(FlickerComponentName.NAV_BAR)
}
testSpec.assertLayersEnd {
isVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
isVisible(FlickerComponentName.NAV_BAR)
}
}
@Test
fun statusBarLayerIsVisibleAroundSwitching() {
testSpec.assertLayersStart {
isVisible(WindowManagerStateHelper.STATUS_BAR_COMPONENT)
isVisible(FlickerComponentName.STATUS_BAR)
}
testSpec.assertLayersEnd {
isVisible(WindowManagerStateHelper.STATUS_BAR_COMPONENT)
isVisible(FlickerComponentName.STATUS_BAR)
}
}
@Test
fun imeLayerIsVisibleWhenSwitchingToImeApp() {
testSpec.assertLayersStart {
isVisible(WindowManagerStateHelper.IME_COMPONENT)
isVisible(FlickerComponentName.IME)
}
testSpec.assertLayersTag(TAG_IME_VISIBLE) {
isVisible(WindowManagerStateHelper.IME_COMPONENT)
isVisible(FlickerComponentName.IME)
}
testSpec.assertLayersEnd {
isVisible(WindowManagerStateHelper.IME_COMPONENT)
isVisible(FlickerComponentName.IME)
}
}
@Test
fun imeLayerIsInvisibleWhenSwitchingToTestApp() {
testSpec.assertLayersTag(TAG_IME_INVISIBLE) {
isInvisible(WindowManagerStateHelper.IME_COMPONENT)
isInvisible(FlickerComponentName.IME)
}
}

View File

@@ -31,6 +31,7 @@ import com.android.server.wm.flicker.annotation.Group4
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.TwoActivitiesAppHelper
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.parser.toFlickerComponent
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -78,12 +79,16 @@ class ActivitiesTransitionTest(val testSpec: FlickerTestParameter) {
@Presubmit
@Test
fun finishSubActivity() {
val buttonActivityComponent = ActivityOptions
.BUTTON_ACTIVITY_COMPONENT_NAME.toFlickerComponent()
val imeAutoFocusActivityComponent = ActivityOptions
.SIMPLE_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME.toFlickerComponent()
testSpec.assertWm {
this.isAppWindowOnTop(ActivityOptions.BUTTON_ACTIVITY_COMPONENT_NAME)
.then()
.isAppWindowOnTop(ActivityOptions.SIMPLE_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME)
.then()
.isAppWindowOnTop(ActivityOptions.BUTTON_ACTIVITY_COMPONENT_NAME)
this.isAppWindowOnTop(buttonActivityComponent)
.then()
.isAppWindowOnTop(imeAutoFocusActivityComponent)
.then()
.isAppWindowOnTop(buttonActivityComponent)
}
}

View File

@@ -16,7 +16,6 @@
package com.android.server.wm.flicker.launch
import android.content.ComponentName
import android.platform.test.annotations.Postsubmit
import android.platform.test.annotations.Presubmit
import android.view.Surface
@@ -29,7 +28,7 @@ import com.android.server.wm.flicker.FlickerTestParameterFactory
import com.android.server.wm.flicker.annotation.Group1
import com.android.server.wm.flicker.helpers.NonResizeableAppHelper
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import com.google.common.truth.Truth
import org.junit.FixMethodOrder
import org.junit.Test
@@ -61,7 +60,7 @@ import org.junit.runners.Parameterized
@Group1
class OpenAppNonResizeableTest(testSpec: FlickerTestParameter) : OpenAppTransition(testSpec) {
override val testApp = NonResizeableAppHelper(instrumentation)
private val colorFadComponent = ComponentName("", "ColorFade BLAST#")
private val colorFadComponent = FlickerComponentName("", "ColorFade BLAST#")
/**
* Defines the transition used to run the test
@@ -92,15 +91,15 @@ class OpenAppNonResizeableTest(testSpec: FlickerTestParameter) : OpenAppTransiti
* Checks that the nav bar layer starts visible, becomes invisible during unlocking animation
* and becomes visible at the end
*/
@Presubmit
@Postsubmit
@Test
fun navBarLayerVisibilityChanges() {
testSpec.assertLayers {
this.isVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
this.isVisible(FlickerComponentName.NAV_BAR)
.then()
.isInvisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
.isInvisible(FlickerComponentName.NAV_BAR)
.then()
.isVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
.isVisible(FlickerComponentName.NAV_BAR)
}
}
@@ -159,11 +158,11 @@ class OpenAppNonResizeableTest(testSpec: FlickerTestParameter) : OpenAppTransiti
@Test
fun navBarWindowsVisibilityChanges() {
testSpec.assertWm {
this.isAboveAppWindowVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
this.isAboveAppWindowVisible(FlickerComponentName.NAV_BAR)
.then()
.isNonAppWindowInvisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
.isNonAppWindowInvisible(FlickerComponentName.NAV_BAR)
.then()
.isAboveAppWindowVisible(WindowManagerStateHelper.NAV_BAR_COMPONENT)
.isAboveAppWindowVisible(FlickerComponentName.NAV_BAR)
}
}
@@ -173,6 +172,10 @@ class OpenAppNonResizeableTest(testSpec: FlickerTestParameter) : OpenAppTransiti
override fun visibleWindowsShownMoreThanOneConsecutiveEntry() =
super.visibleWindowsShownMoreThanOneConsecutiveEntry()
@FlakyTest
@Test
override fun navBarLayerRotatesAndScales() = super.navBarLayerRotatesAndScales()
/** {@inheritDoc} */
@FlakyTest
@Test

View File

@@ -39,8 +39,7 @@ import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper.Companion.SNAPSHOT_COMPONENT
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper.Companion.SPLASH_SCREEN_COMPONENT
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.Test
abstract class OpenAppTransition(protected val testSpec: FlickerTestParameter) {
@@ -188,9 +187,9 @@ abstract class OpenAppTransition(protected val testSpec: FlickerTestParameter) {
testSpec.assertWm {
this.isAppWindowOnTop(LAUNCHER_COMPONENT)
.then()
.isAppWindowOnTop(SNAPSHOT_COMPONENT, isOptional = true)
.isAppWindowOnTop(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isAppWindowOnTop(SPLASH_SCREEN_COMPONENT, isOptional = true)
.isAppWindowOnTop(FlickerComponentName.SPLASH_SCREEN, isOptional = true)
.then()
.isAppWindowOnTop(testApp.component)
}

View File

@@ -39,7 +39,7 @@ import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper.Companion.SNAPSHOT_COMPONENT
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -189,7 +189,7 @@ class QuickSwitchBetweenTwoAppsBackTest(private val testSpec: FlickerTestParamet
testSpec.assertWm {
this.isAppWindowInvisible(testApp1.component)
.then()
.isAppWindowVisible(SNAPSHOT_COMPONENT, isOptional = true)
.isAppWindowVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isAppWindowVisible(testApp1.component, ignoreActivity = true)
}
@@ -251,7 +251,7 @@ class QuickSwitchBetweenTwoAppsBackTest(private val testSpec: FlickerTestParamet
// TODO: Do we actually want to test this? Seems too implementation specific...
.isAppWindowVisible(LAUNCHER_COMPONENT, isOptional = true)
.then()
.isAppWindowVisible(SNAPSHOT_COMPONENT, isOptional = true)
.isAppWindowVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isAppWindowVisible(testApp1.component)
}
@@ -270,7 +270,7 @@ class QuickSwitchBetweenTwoAppsBackTest(private val testSpec: FlickerTestParamet
.then()
.isVisible(LAUNCHER_COMPONENT, isOptional = true)
.then()
.isVisible(SNAPSHOT_COMPONENT, isOptional = true)
.isVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isVisible(testApp1.component)
}

View File

@@ -40,7 +40,7 @@ import com.android.server.wm.flicker.repetitions
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper.Companion.SNAPSHOT_COMPONENT
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -207,7 +207,7 @@ class QuickSwitchBetweenTwoAppsForwardTest(private val testSpec: FlickerTestPara
testSpec.assertWm {
this.isAppWindowInvisible(testApp2.component)
.then()
.isAppWindowVisible(SNAPSHOT_COMPONENT, isOptional = true)
.isAppWindowVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isAppWindowVisible(testApp2.component, ignoreActivity = true)
}
@@ -268,7 +268,7 @@ class QuickSwitchBetweenTwoAppsForwardTest(private val testSpec: FlickerTestPara
.then()
.isAppWindowVisible(LAUNCHER_COMPONENT, isOptional = true)
.then()
.isAppWindowVisible(SNAPSHOT_COMPONENT, isOptional = true)
.isAppWindowVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isAppWindowVisible(testApp2.component)
}
@@ -287,7 +287,7 @@ class QuickSwitchBetweenTwoAppsForwardTest(private val testSpec: FlickerTestPara
.then()
.isVisible(LAUNCHER_COMPONENT, isOptional = true)
.then()
.isVisible(SNAPSHOT_COMPONENT, isOptional = true)
.isVisible(FlickerComponentName.SNAPSHOT, isOptional = true)
.then()
.isVisible(testApp2.component)
}

View File

@@ -38,7 +38,7 @@ import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper.Companion.SNAPSHOT_COMPONENT
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -262,7 +262,7 @@ class QuickSwitchFromLauncherTest(private val testSpec: FlickerTestParameter) {
testSpec.assertWm {
this.isAppWindowVisible(LAUNCHER_COMPONENT)
.then()
.isAppWindowVisible(SNAPSHOT_COMPONENT)
.isAppWindowVisible(FlickerComponentName.SNAPSHOT)
.then()
.isAppWindowVisible(testApp.component)
}
@@ -278,7 +278,7 @@ class QuickSwitchFromLauncherTest(private val testSpec: FlickerTestParameter) {
testSpec.assertLayers {
this.isVisible(LAUNCHER_COMPONENT)
.then()
.isVisible(SNAPSHOT_COMPONENT)
.isVisible(FlickerComponentName.SNAPSHOT)
.then()
.isVisible(testApp.component)
}

View File

@@ -30,7 +30,7 @@ import com.android.server.wm.flicker.startRotation
import com.android.server.wm.flicker.statusBarLayerIsVisible
import com.android.server.wm.flicker.statusBarLayerRotatesScales
import com.android.server.wm.flicker.statusBarWindowIsVisible
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper.Companion.ROTATION_COMPONENT
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -72,7 +72,7 @@ class ChangeAppRotationTest(
testSpec.assertLayers {
this.isVisible(testApp.component)
.then()
.isVisible(ROTATION_COMPONENT)
.isVisible(FlickerComponentName.ROTATION)
.then()
.isVisible(testApp.component)
}

View File

@@ -17,7 +17,6 @@
package com.android.server.wm.flicker.rotation
import android.app.Instrumentation
import android.content.ComponentName
import android.platform.test.annotations.Presubmit
import androidx.test.platform.app.InstrumentationRegistry
import com.android.server.wm.flicker.FlickerBuilderProvider
@@ -31,7 +30,7 @@ import com.android.server.wm.flicker.navBarLayerRotatesAndScales
import com.android.server.wm.flicker.navBarWindowIsVisible
import com.android.server.wm.flicker.entireScreenCovered
import com.android.server.wm.flicker.startRotation
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.Test
abstract class RotationTransition(protected val testSpec: FlickerTestParameter) {
@@ -86,9 +85,9 @@ abstract class RotationTransition(protected val testSpec: FlickerTestParameter)
open fun visibleLayersShownMoreThanOneConsecutiveEntry() {
testSpec.assertLayers {
this.visibleLayersShownMoreThanOneConsecutiveEntry(
ignoreLayers = listOf(WindowManagerStateHelper.SPLASH_SCREEN_COMPONENT,
WindowManagerStateHelper.SNAPSHOT_COMPONENT,
ComponentName("", "SecondaryHomeHandle")
ignoreLayers = listOf(FlickerComponentName.SPLASH_SCREEN,
FlickerComponentName.SNAPSHOT,
FlickerComponentName("", "SecondaryHomeHandle")
)
)
}

View File

@@ -27,7 +27,7 @@ import com.android.server.wm.flicker.annotation.Group3
import com.android.server.wm.flicker.dsl.FlickerBuilder
import com.android.server.wm.flicker.helpers.SeamlessRotationAppHelper
import com.android.server.wm.flicker.testapp.ActivityOptions
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
import com.android.server.wm.traces.common.FlickerComponentName
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
@@ -114,7 +114,7 @@ class SeamlessAppRotationTest(
@Test
fun statusBarWindowIsAlwaysInvisible() {
testSpec.assertWm {
this.isAboveAppWindowInvisible(WindowManagerStateHelper.STATUS_BAR_COMPONENT)
this.isAboveAppWindowInvisible(FlickerComponentName.STATUS_BAR)
}
}
@@ -122,7 +122,7 @@ class SeamlessAppRotationTest(
@Test
fun statusBarLayerIsAlwaysInvisible() {
testSpec.assertLayers {
this.isInvisible(WindowManagerStateHelper.STATUS_BAR_COMPONENT)
this.isInvisible(FlickerComponentName.STATUS_BAR)
}
}