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

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

Adjust assertions to match auto enter PiP

Test: atest WMShellFlickerTestsPipApps
Bug: 282758103

Change-Id: I226d4f34cc3d61420c6077ce970ced5d9267cf0e
parent 1c504ed7
Loading
Loading
Loading
Loading
+8 −6
Original line number Diff line number Diff line
@@ -33,14 +33,14 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran
    @Postsubmit
    @Test
    override fun pipAppWindowAlwaysVisible() {
        flicker.assertWm { this.isAppWindowVisible(standardAppHelper) }
        flicker.assertWm { this.isAppWindowVisible(standardAppHelper.packageNameMatcher) }
    }

    /** Checks [standardAppHelper] layer remains visible throughout the animation */
    @Postsubmit
    @Test
    override fun pipAppLayerAlwaysVisible() {
        flicker.assertLayers { this.isVisible(standardAppHelper) }
        flicker.assertLayers { this.isVisible(standardAppHelper.packageNameMatcher) }
    }

    /** Checks the content overlay appears then disappears during the animation */
@@ -57,7 +57,9 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran
    @Postsubmit
    @Test
    override fun pipWindowRemainInsideVisibleBounds() {
        flicker.assertWmVisibleRegion(standardAppHelper) { coversAtMost(displayBounds) }
        flicker.assertWmVisibleRegion(standardAppHelper.packageNameMatcher) {
            coversAtMost(displayBounds)
        }
    }

    /**
@@ -68,7 +70,7 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran
    @Test
    override fun pipLayerOrOverlayRemainInsideVisibleBounds() {
        flicker.assertLayersVisibleRegion(
            standardAppHelper.or(ComponentNameMatcher.PIP_CONTENT_OVERLAY)
            standardAppHelper.packageNameMatcher.or(ComponentNameMatcher.PIP_CONTENT_OVERLAY)
        ) {
            coversAtMost(displayBounds)
        }
@@ -93,9 +95,9 @@ abstract class AppsEnterPipTransition(flicker: LegacyFlickerTest) : EnterPipTran
    @Test
    override fun pipWindowBecomesPinned() {
        flicker.assertWm {
            invoke("pipWindowIsNotPinned") { it.isNotPinned(standardAppHelper) }
            invoke("pipWindowIsNotPinned") { it.isNotPinned(standardAppHelper.packageNameMatcher) }
                .then()
                .invoke("pipWindowIsPinned") { it.isPinned(standardAppHelper) }
                .invoke("pipWindowIsPinned") { it.isPinned(standardAppHelper.packageNameMatcher) }
        }
    }

+14 −3
Original line number Diff line number Diff line
@@ -16,19 +16,22 @@

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

import android.os.Handler
import android.os.Looper
import android.os.SystemClock
import android.content.Context
import android.location.Criteria
import android.location.Location
import android.location.LocationManager
import android.os.Handler
import android.os.Looper
import android.os.SystemClock
import android.platform.test.annotations.Postsubmit
import android.tools.device.apphelpers.MapsAppHelper
import android.tools.device.flicker.junit.FlickerParametersRunnerFactory
import android.tools.device.flicker.legacy.FlickerBuilder
import android.tools.device.flicker.legacy.LegacyFlickerTest
import androidx.test.filters.RequiresDevice
import org.junit.Assume
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.MethodSorters
import org.junit.runners.Parameterized
@@ -129,4 +132,12 @@ open class MapsEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransition
    override val thisTransition: FlickerBuilder.() -> Unit = {
        transitions { tapl.goHome() }
    }

    @Postsubmit
    @Test
    override fun focusChanges() {
        // in gestural nav the focus goes to different activity on swipe up with auto enter PiP
        Assume.assumeFalse(flicker.scenario.isGesturalNavigation)
        super.focusChanges()
    }
}
+17 −0
Original line number Diff line number Diff line
@@ -16,13 +16,16 @@

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

import android.platform.test.annotations.Postsubmit
import android.tools.common.traces.component.ComponentNameMatcher
import android.tools.device.apphelpers.YouTubeAppHelper
import android.tools.device.flicker.junit.FlickerParametersRunnerFactory
import android.tools.device.flicker.legacy.FlickerBuilder
import android.tools.device.flicker.legacy.LegacyFlickerTest
import androidx.test.filters.RequiresDevice
import org.junit.Assume
import org.junit.FixMethodOrder
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.runners.MethodSorters
import org.junit.runners.Parameterized
@@ -75,4 +78,18 @@ open class YouTubeEnterPipTest(flicker: LegacyFlickerTest) : AppsEnterPipTransit
    override val thisTransition: FlickerBuilder.() -> Unit = {
        transitions { tapl.goHome() }
    }

    @Postsubmit
    @Test
    override fun pipOverlayLayerAppearThenDisappear() {
        // YouTube uses source rect hint, so PiP overlay is never present
    }

    @Postsubmit
    @Test
    override fun focusChanges() {
        // in gestural nav the focus goes to different activity on swipe up with auto enter PiP
        Assume.assumeFalse(flicker.scenario.isGesturalNavigation)
        super.focusChanges()
    }
}