Launch main activity only 1x
Currently we launch the activity for each iteration and that is not necessary. The test hsould launch it once Bug: 209843622 Test: atest FlickerTests Change-Id: Ibce9f17954771158cb6d85b213f40a215f0c0c30
This commit is contained in:
@@ -19,11 +19,13 @@ package com.android.server.wm.flicker.helpers
|
||||
import android.app.Instrumentation
|
||||
import android.support.test.launcherhelper.ILauncherStrategy
|
||||
import android.support.test.launcherhelper.LauncherStrategyFactory
|
||||
import android.view.Display
|
||||
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.common.WindowManagerConditionsFactory
|
||||
import com.android.server.wm.traces.parser.toFlickerComponent
|
||||
import com.android.server.wm.traces.parser.windowmanager.WindowManagerStateHelper
|
||||
|
||||
@@ -36,6 +38,10 @@ class TwoActivitiesAppHelper @JvmOverloads constructor(
|
||||
.getInstance(instr)
|
||||
.launcherStrategy
|
||||
) : StandardAppHelper(instr, launcherName, component, launcherStrategy) {
|
||||
|
||||
private val secondActivityComponent =
|
||||
ActivityOptions.SIMPLE_ACTIVITY_AUTO_FOCUS_COMPONENT_NAME.toFlickerComponent()
|
||||
|
||||
fun openSecondActivity(device: UiDevice, wmHelper: WindowManagerStateHelper) {
|
||||
val launchActivityButton = By.res(getPackage(), LAUNCH_SECOND_ACTIVITY)
|
||||
val button = device.wait(Until.findObject(launchActivityButton), FIND_TIMEOUT)
|
||||
@@ -47,8 +53,11 @@ class TwoActivitiesAppHelper @JvmOverloads constructor(
|
||||
button.click()
|
||||
|
||||
device.wait(Until.gone(launchActivityButton), FIND_TIMEOUT)
|
||||
wmHelper.waitForAppTransitionIdle()
|
||||
wmHelper.waitForFullScreenApp(component)
|
||||
wmHelper.waitForFullScreenApp(secondActivityComponent)
|
||||
wmHelper.waitFor(
|
||||
WindowManagerConditionsFactory.isAppTransitionIdle(Display.DEFAULT_DISPLAY),
|
||||
WindowManagerConditionsFactory.hasLayersAnimating().negate()
|
||||
)
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -70,7 +70,7 @@ class ActivitiesTransitionTest(val testSpec: FlickerTestParameter) {
|
||||
fun buildFlicker(): FlickerBuilder {
|
||||
return FlickerBuilder(instrumentation).apply {
|
||||
setup {
|
||||
eachRun {
|
||||
test {
|
||||
testApp.launchViaIntent(wmHelper)
|
||||
wmHelper.waitForFullScreenApp(testApp.component)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user