Loading libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonAssertions.kt +33 −30 Original line number Diff line number Diff line Loading @@ -16,97 +16,100 @@ 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.flicker.traces.layers.getVisibleBounds fun FlickerTestParameter.appPairsDividerIsVisible() { fun FlickerTestParameter.appPairsDividerIsVisibleAtEnd() { assertLayersEnd { this.isVisible(APP_PAIR_SPLIT_DIVIDER) this.isVisible(APP_PAIR_SPLIT_DIVIDER_COMPONENT) } } fun FlickerTestParameter.appPairsDividerIsInvisible() { fun FlickerTestParameter.appPairsDividerIsInvisibleAtEnd() { assertLayersEnd { this.notContains(APP_PAIR_SPLIT_DIVIDER) this.notContains(APP_PAIR_SPLIT_DIVIDER_COMPONENT) } } fun FlickerTestParameter.appPairsDividerBecomesVisible() { assertLayers { this.isInvisible(DOCKED_STACK_DIVIDER) this.isInvisible(DOCKED_STACK_DIVIDER_COMPONENT) .then() .isVisible(DOCKED_STACK_DIVIDER) .isVisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerIsVisible() { fun FlickerTestParameter.dockedStackDividerIsVisibleAtEnd() { assertLayersEnd { this.isVisible(DOCKED_STACK_DIVIDER) this.isVisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerBecomesVisible() { assertLayers { this.isInvisible(DOCKED_STACK_DIVIDER) this.isInvisible(DOCKED_STACK_DIVIDER_COMPONENT) .then() .isVisible(DOCKED_STACK_DIVIDER) .isVisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerBecomesInvisible() { assertLayers { this.isVisible(DOCKED_STACK_DIVIDER) this.isVisible(DOCKED_STACK_DIVIDER_COMPONENT) .then() .isInvisible(DOCKED_STACK_DIVIDER) .isInvisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerIsInvisible() { fun FlickerTestParameter.dockedStackDividerNotExistsAtEnd() { assertLayersEnd { this.notContains(DOCKED_STACK_DIVIDER) this.notContains(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.appPairsPrimaryBoundsIsVisible(rotation: Int, primaryLayerName: String) { fun FlickerTestParameter.appPairsPrimaryBoundsIsVisibleAtEnd( rotation: Int, primaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(APP_PAIR_SPLIT_DIVIDER) visibleRegion(primaryLayerName) val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(primaryComponent) .coversExactly(getPrimaryRegion(dividerRegion, rotation)) } } fun FlickerTestParameter.dockedStackPrimaryBoundsIsVisible( fun FlickerTestParameter.dockedStackPrimaryBoundsIsVisibleAtEnd( rotation: Int, primaryLayerName: String primaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(DOCKED_STACK_DIVIDER) visibleRegion(primaryLayerName) val dividerRegion = layer(DOCKED_STACK_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(primaryComponent) .coversExactly(getPrimaryRegion(dividerRegion, rotation)) } } fun FlickerTestParameter.appPairsSecondaryBoundsIsVisible( fun FlickerTestParameter.appPairsSecondaryBoundsIsVisibleAtEnd( rotation: Int, secondaryLayerName: String secondaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(APP_PAIR_SPLIT_DIVIDER) visibleRegion(secondaryLayerName) val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(secondaryComponent) .coversExactly(getSecondaryRegion(dividerRegion, rotation)) } } fun FlickerTestParameter.dockedStackSecondaryBoundsIsVisible( fun FlickerTestParameter.dockedStackSecondaryBoundsIsVisibleAtEnd( rotation: Int, secondaryLayerName: String secondaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(DOCKED_STACK_DIVIDER) visibleRegion(secondaryLayerName) val dividerRegion = layer(DOCKED_STACK_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(secondaryComponent) .coversExactly(getSecondaryRegion(dividerRegion, rotation)) } } Loading libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonConstants.kt +5 −3 Original line number Diff line number Diff line Loading @@ -14,9 +14,11 @@ * limitations under the License. */ @file:JvmName("CommonConstants") package com.android.wm.shell.flicker const val IME_WINDOW_NAME = "InputMethod" import android.content.ComponentName const val SYSTEM_UI_PACKAGE_NAME = "com.android.systemui" const val APP_PAIR_SPLIT_DIVIDER = "AppPairSplitDivider" const val DOCKED_STACK_DIVIDER = "DockedStackDivider" No newline at end of file val APP_PAIR_SPLIT_DIVIDER_COMPONENT = ComponentName("", "AppPairSplitDivider#") val DOCKED_STACK_DIVIDER_COMPONENT = ComponentName("", "DockedStackDivider#") No newline at end of file libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/apppairs/AppPairsTestCannotPairNonResizeableApps.kt +4 −4 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameter import com.android.server.wm.flicker.FlickerTestParameterFactory import com.android.server.wm.flicker.annotation.Group1 import com.android.server.wm.flicker.dsl.FlickerBuilder import com.android.wm.shell.flicker.appPairsDividerIsInvisible import com.android.wm.shell.flicker.appPairsDividerIsInvisibleAtEnd import com.android.wm.shell.flicker.helpers.AppPairsHelper import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.setSupportsNonResizableMultiWindow Loading Loading @@ -91,7 +91,7 @@ class AppPairsTestCannotPairNonResizeableApps( @Presubmit @Test fun appPairsDividerIsInvisible() = testSpec.appPairsDividerIsInvisible() fun appPairsDividerIsInvisibleAtEnd() = testSpec.appPairsDividerIsInvisibleAtEnd() @Presubmit @Test Loading @@ -101,8 +101,8 @@ class AppPairsTestCannotPairNonResizeableApps( "Non resizeable app not initialized" } testSpec.assertWmEnd { isVisible(nonResizeableApp.defaultWindowName) isInvisible(primaryApp.defaultWindowName) isVisible(nonResizeableApp.component) isInvisible(primaryApp.component) } } Loading libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/apppairs/AppPairsTestPairPrimaryAndSecondaryApps.kt +8 −9 Original line number Diff line number Diff line Loading @@ -25,9 +25,8 @@ import com.android.server.wm.flicker.FlickerTestParameter import com.android.server.wm.flicker.FlickerTestParameterFactory import com.android.server.wm.flicker.annotation.Group1 import com.android.server.wm.flicker.dsl.FlickerBuilder import com.android.server.wm.flicker.traces.layers.getVisibleBounds import com.android.wm.shell.flicker.APP_PAIR_SPLIT_DIVIDER import com.android.wm.shell.flicker.appPairsDividerIsVisible import com.android.wm.shell.flicker.APP_PAIR_SPLIT_DIVIDER_COMPONENT import com.android.wm.shell.flicker.appPairsDividerIsVisibleAtEnd import com.android.wm.shell.flicker.helpers.AppPairsHelper import com.android.wm.shell.flicker.helpers.AppPairsHelper.Companion.waitAppsShown import org.junit.FixMethodOrder Loading Loading @@ -73,14 +72,14 @@ class AppPairsTestPairPrimaryAndSecondaryApps( @Presubmit @Test fun appPairsDividerIsVisible() = testSpec.appPairsDividerIsVisible() fun appPairsDividerIsVisibleAtEnd() = testSpec.appPairsDividerIsVisibleAtEnd() @Presubmit @Test fun bothAppWindowsVisible() { testSpec.assertWmEnd { isVisible(primaryApp.defaultWindowName) isVisible(secondaryApp.defaultWindowName) isVisible(primaryApp.component) isVisible(secondaryApp.component) } } Loading @@ -88,10 +87,10 @@ class AppPairsTestPairPrimaryAndSecondaryApps( @Test fun appsEndingBounds() { testSpec.assertLayersEnd { val dividerRegion = entry.getVisibleBounds(APP_PAIR_SPLIT_DIVIDER) visibleRegion(primaryApp.defaultWindowName) val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(primaryApp.component) .coversExactly(appPairsHelper.getPrimaryBounds(dividerRegion)) visibleRegion(secondaryApp.defaultWindowName) visibleRegion(secondaryApp.component) .coversExactly(appPairsHelper.getSecondaryBounds(dividerRegion)) } } Loading libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/apppairs/AppPairsTestSupportPairNonResizeableApps.kt +4 −4 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameter import com.android.server.wm.flicker.FlickerTestParameterFactory import com.android.server.wm.flicker.annotation.Group1 import com.android.server.wm.flicker.dsl.FlickerBuilder import com.android.wm.shell.flicker.appPairsDividerIsVisible import com.android.wm.shell.flicker.appPairsDividerIsVisibleAtEnd import com.android.wm.shell.flicker.helpers.AppPairsHelper import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.setSupportsNonResizableMultiWindow Loading Loading @@ -91,7 +91,7 @@ class AppPairsTestSupportPairNonResizeableApps( @Presubmit @Test fun appPairsDividerIsVisible() = testSpec.appPairsDividerIsVisible() fun appPairsDividerIsVisibleAtEnd() = testSpec.appPairsDividerIsVisibleAtEnd() @Presubmit @Test Loading @@ -101,8 +101,8 @@ class AppPairsTestSupportPairNonResizeableApps( "Non resizeable app not initialized" } testSpec.assertWmEnd { isVisible(nonResizeableApp.defaultWindowName) isVisible(primaryApp.defaultWindowName) isVisible(nonResizeableApp.component) isVisible(primaryApp.component) } } Loading Loading
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonAssertions.kt +33 −30 Original line number Diff line number Diff line Loading @@ -16,97 +16,100 @@ 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.flicker.traces.layers.getVisibleBounds fun FlickerTestParameter.appPairsDividerIsVisible() { fun FlickerTestParameter.appPairsDividerIsVisibleAtEnd() { assertLayersEnd { this.isVisible(APP_PAIR_SPLIT_DIVIDER) this.isVisible(APP_PAIR_SPLIT_DIVIDER_COMPONENT) } } fun FlickerTestParameter.appPairsDividerIsInvisible() { fun FlickerTestParameter.appPairsDividerIsInvisibleAtEnd() { assertLayersEnd { this.notContains(APP_PAIR_SPLIT_DIVIDER) this.notContains(APP_PAIR_SPLIT_DIVIDER_COMPONENT) } } fun FlickerTestParameter.appPairsDividerBecomesVisible() { assertLayers { this.isInvisible(DOCKED_STACK_DIVIDER) this.isInvisible(DOCKED_STACK_DIVIDER_COMPONENT) .then() .isVisible(DOCKED_STACK_DIVIDER) .isVisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerIsVisible() { fun FlickerTestParameter.dockedStackDividerIsVisibleAtEnd() { assertLayersEnd { this.isVisible(DOCKED_STACK_DIVIDER) this.isVisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerBecomesVisible() { assertLayers { this.isInvisible(DOCKED_STACK_DIVIDER) this.isInvisible(DOCKED_STACK_DIVIDER_COMPONENT) .then() .isVisible(DOCKED_STACK_DIVIDER) .isVisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerBecomesInvisible() { assertLayers { this.isVisible(DOCKED_STACK_DIVIDER) this.isVisible(DOCKED_STACK_DIVIDER_COMPONENT) .then() .isInvisible(DOCKED_STACK_DIVIDER) .isInvisible(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.dockedStackDividerIsInvisible() { fun FlickerTestParameter.dockedStackDividerNotExistsAtEnd() { assertLayersEnd { this.notContains(DOCKED_STACK_DIVIDER) this.notContains(DOCKED_STACK_DIVIDER_COMPONENT) } } fun FlickerTestParameter.appPairsPrimaryBoundsIsVisible(rotation: Int, primaryLayerName: String) { fun FlickerTestParameter.appPairsPrimaryBoundsIsVisibleAtEnd( rotation: Int, primaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(APP_PAIR_SPLIT_DIVIDER) visibleRegion(primaryLayerName) val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(primaryComponent) .coversExactly(getPrimaryRegion(dividerRegion, rotation)) } } fun FlickerTestParameter.dockedStackPrimaryBoundsIsVisible( fun FlickerTestParameter.dockedStackPrimaryBoundsIsVisibleAtEnd( rotation: Int, primaryLayerName: String primaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(DOCKED_STACK_DIVIDER) visibleRegion(primaryLayerName) val dividerRegion = layer(DOCKED_STACK_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(primaryComponent) .coversExactly(getPrimaryRegion(dividerRegion, rotation)) } } fun FlickerTestParameter.appPairsSecondaryBoundsIsVisible( fun FlickerTestParameter.appPairsSecondaryBoundsIsVisibleAtEnd( rotation: Int, secondaryLayerName: String secondaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(APP_PAIR_SPLIT_DIVIDER) visibleRegion(secondaryLayerName) val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(secondaryComponent) .coversExactly(getSecondaryRegion(dividerRegion, rotation)) } } fun FlickerTestParameter.dockedStackSecondaryBoundsIsVisible( fun FlickerTestParameter.dockedStackSecondaryBoundsIsVisibleAtEnd( rotation: Int, secondaryLayerName: String secondaryComponent: ComponentName ) { assertLayersEnd { val dividerRegion = entry.getVisibleBounds(DOCKED_STACK_DIVIDER) visibleRegion(secondaryLayerName) val dividerRegion = layer(DOCKED_STACK_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(secondaryComponent) .coversExactly(getSecondaryRegion(dividerRegion, rotation)) } } Loading
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/CommonConstants.kt +5 −3 Original line number Diff line number Diff line Loading @@ -14,9 +14,11 @@ * limitations under the License. */ @file:JvmName("CommonConstants") package com.android.wm.shell.flicker const val IME_WINDOW_NAME = "InputMethod" import android.content.ComponentName const val SYSTEM_UI_PACKAGE_NAME = "com.android.systemui" const val APP_PAIR_SPLIT_DIVIDER = "AppPairSplitDivider" const val DOCKED_STACK_DIVIDER = "DockedStackDivider" No newline at end of file val APP_PAIR_SPLIT_DIVIDER_COMPONENT = ComponentName("", "AppPairSplitDivider#") val DOCKED_STACK_DIVIDER_COMPONENT = ComponentName("", "DockedStackDivider#") No newline at end of file
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/apppairs/AppPairsTestCannotPairNonResizeableApps.kt +4 −4 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameter import com.android.server.wm.flicker.FlickerTestParameterFactory import com.android.server.wm.flicker.annotation.Group1 import com.android.server.wm.flicker.dsl.FlickerBuilder import com.android.wm.shell.flicker.appPairsDividerIsInvisible import com.android.wm.shell.flicker.appPairsDividerIsInvisibleAtEnd import com.android.wm.shell.flicker.helpers.AppPairsHelper import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.setSupportsNonResizableMultiWindow Loading Loading @@ -91,7 +91,7 @@ class AppPairsTestCannotPairNonResizeableApps( @Presubmit @Test fun appPairsDividerIsInvisible() = testSpec.appPairsDividerIsInvisible() fun appPairsDividerIsInvisibleAtEnd() = testSpec.appPairsDividerIsInvisibleAtEnd() @Presubmit @Test Loading @@ -101,8 +101,8 @@ class AppPairsTestCannotPairNonResizeableApps( "Non resizeable app not initialized" } testSpec.assertWmEnd { isVisible(nonResizeableApp.defaultWindowName) isInvisible(primaryApp.defaultWindowName) isVisible(nonResizeableApp.component) isInvisible(primaryApp.component) } } Loading
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/apppairs/AppPairsTestPairPrimaryAndSecondaryApps.kt +8 −9 Original line number Diff line number Diff line Loading @@ -25,9 +25,8 @@ import com.android.server.wm.flicker.FlickerTestParameter import com.android.server.wm.flicker.FlickerTestParameterFactory import com.android.server.wm.flicker.annotation.Group1 import com.android.server.wm.flicker.dsl.FlickerBuilder import com.android.server.wm.flicker.traces.layers.getVisibleBounds import com.android.wm.shell.flicker.APP_PAIR_SPLIT_DIVIDER import com.android.wm.shell.flicker.appPairsDividerIsVisible import com.android.wm.shell.flicker.APP_PAIR_SPLIT_DIVIDER_COMPONENT import com.android.wm.shell.flicker.appPairsDividerIsVisibleAtEnd import com.android.wm.shell.flicker.helpers.AppPairsHelper import com.android.wm.shell.flicker.helpers.AppPairsHelper.Companion.waitAppsShown import org.junit.FixMethodOrder Loading Loading @@ -73,14 +72,14 @@ class AppPairsTestPairPrimaryAndSecondaryApps( @Presubmit @Test fun appPairsDividerIsVisible() = testSpec.appPairsDividerIsVisible() fun appPairsDividerIsVisibleAtEnd() = testSpec.appPairsDividerIsVisibleAtEnd() @Presubmit @Test fun bothAppWindowsVisible() { testSpec.assertWmEnd { isVisible(primaryApp.defaultWindowName) isVisible(secondaryApp.defaultWindowName) isVisible(primaryApp.component) isVisible(secondaryApp.component) } } Loading @@ -88,10 +87,10 @@ class AppPairsTestPairPrimaryAndSecondaryApps( @Test fun appsEndingBounds() { testSpec.assertLayersEnd { val dividerRegion = entry.getVisibleBounds(APP_PAIR_SPLIT_DIVIDER) visibleRegion(primaryApp.defaultWindowName) val dividerRegion = layer(APP_PAIR_SPLIT_DIVIDER_COMPONENT).visibleRegion.region visibleRegion(primaryApp.component) .coversExactly(appPairsHelper.getPrimaryBounds(dividerRegion)) visibleRegion(secondaryApp.defaultWindowName) visibleRegion(secondaryApp.component) .coversExactly(appPairsHelper.getSecondaryBounds(dividerRegion)) } } Loading
libs/WindowManager/Shell/tests/flicker/src/com/android/wm/shell/flicker/apppairs/AppPairsTestSupportPairNonResizeableApps.kt +4 −4 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ import com.android.server.wm.flicker.FlickerTestParameter import com.android.server.wm.flicker.FlickerTestParameterFactory import com.android.server.wm.flicker.annotation.Group1 import com.android.server.wm.flicker.dsl.FlickerBuilder import com.android.wm.shell.flicker.appPairsDividerIsVisible import com.android.wm.shell.flicker.appPairsDividerIsVisibleAtEnd import com.android.wm.shell.flicker.helpers.AppPairsHelper import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.resetMultiWindowConfig import com.android.wm.shell.flicker.helpers.MultiWindowHelper.Companion.setSupportsNonResizableMultiWindow Loading Loading @@ -91,7 +91,7 @@ class AppPairsTestSupportPairNonResizeableApps( @Presubmit @Test fun appPairsDividerIsVisible() = testSpec.appPairsDividerIsVisible() fun appPairsDividerIsVisibleAtEnd() = testSpec.appPairsDividerIsVisibleAtEnd() @Presubmit @Test Loading @@ -101,8 +101,8 @@ class AppPairsTestSupportPairNonResizeableApps( "Non resizeable app not initialized" } testSpec.assertWmEnd { isVisible(nonResizeableApp.defaultWindowName) isVisible(primaryApp.defaultWindowName) isVisible(nonResizeableApp.component) isVisible(primaryApp.component) } } Loading