Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 277dcdaf authored by Mateusz Cicheński's avatar Mateusz Cicheński
Browse files

Refactor the buildTransitions into overridable functions

Cleanup setup states in some of the tests.

Test: atest WMShellFlickerTests
Bug: 285226733

Change-Id: I1f59794ec331bc0f59febd316ad29b20ed06805d
parent 44d77dad
Loading
Loading
Loading
Loading
+17 −14
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.wm.shell.flicker.pip

import android.platform.test.annotations.FlakyTest
import android.platform.test.annotations.Presubmit
import android.tools.device.flicker.junit.FlickerParametersRunnerFactory
import android.tools.device.flicker.legacy.FlickerBuilder
@@ -55,19 +54,23 @@ import org.junit.runners.Parameterized
@Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
class AutoEnterPipOnGoToHomeTest(flicker: FlickerTest) : EnterPipViaAppUiButtonTest(flicker) {
    /** Defines the transition used to run the test */
    override val transition: FlickerBuilder.() -> Unit
        get() = {
    override val thisTransition: FlickerBuilder.() -> Unit = {
        transitions { tapl.goHome() }
    }

    override val defaultEnterPip: FlickerBuilder.() -> Unit = {
        setup {
            pipApp.launchViaIntent(wmHelper)
            pipApp.enableAutoEnterForPipActivity()
        }
    }

    override val defaultTeardown: FlickerBuilder.() -> Unit = {
        teardown {
            // close gracefully so that onActivityUnpinned() can be called before force exit
            pipApp.closePipWindow(wmHelper)
            pipApp.exit(wmHelper)
        }
            transitions { tapl.goHome() }
    }

    @Presubmit
+31 −33
Original line number Diff line number Diff line
@@ -54,9 +54,7 @@ import org.junit.runners.Parameterized
@Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
open class ClosePipBySwipingDownTest(flicker: FlickerTest) : ClosePipTransition(flicker) {
    override val transition: FlickerBuilder.() -> Unit
        get() = {
            super.transition(this)
    override val thisTransition: FlickerBuilder.() -> Unit = {
        transitions {
            val pipRegion = wmHelper.getWindowRegion(pipApp).bounds
            val pipCenterX = pipRegion.centerX()
+4 −5
Original line number Diff line number Diff line
@@ -28,8 +28,7 @@ import org.junit.runners.Parameterized

/** Base class for exiting pip (closing pip window) without returning to the app */
abstract class ClosePipTransition(flicker: FlickerTest) : PipTransition(flicker) {
    override val transition: FlickerBuilder.() -> Unit
        get() = buildTransition {
    override val thisTransition: FlickerBuilder.() -> Unit = {
        setup { this.setRotation(flicker.scenario.startRotation) }
        teardown { this.setRotation(Rotation.ROTATION_0) }
    }
+3 −6
Original line number Diff line number Diff line
@@ -54,10 +54,7 @@ import org.junit.runners.Parameterized
@Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
open class ClosePipWithDismissButtonTest(flicker: FlickerTest) : ClosePipTransition(flicker) {

    override val transition: FlickerBuilder.() -> Unit
        get() = {
            super.transition(this)
    override val thisTransition: FlickerBuilder.() -> Unit = {
        transitions { pipApp.closePipWindow(wmHelper) }
    }

+17 −13
Original line number Diff line number Diff line
@@ -45,19 +45,23 @@ import org.junit.runners.Parameterized
@Parameterized.UseParametersRunnerFactory(FlickerParametersRunnerFactory::class)
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
open class EnterPipOnUserLeaveHintTest(flicker: FlickerTest) : EnterPipTransition(flicker) {
    /** Defines the transition used to run the test */
    override val transition: FlickerBuilder.() -> Unit
        get() = {
    override val thisTransition: FlickerBuilder.() -> Unit = {
        transitions { tapl.goHome() }
    }

    override val defaultEnterPip: FlickerBuilder.() -> Unit = {
        setup {
            pipApp.launchViaIntent(wmHelper)
            pipApp.enableEnterPipOnUserLeaveHint()
        }
    }

    override val defaultTeardown: FlickerBuilder.() -> Unit = {
        teardown {
            // close gracefully so that onActivityUnpinned() can be called before force exit
            pipApp.closePipWindow(wmHelper)
            pipApp.exit(wmHelper)
        }
            transitions { tapl.goHome() }
    }

    @Presubmit
Loading