Loading tests/FlickerTests/src/com/android/server/wm/flicker/service/Utils.kt 0 → 100644 +53 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service import android.app.Instrumentation import android.platform.test.rule.NavigationModeRule import android.platform.test.rule.PressHomeRule import android.platform.test.rule.UnlockScreenRule import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.device.apphelpers.MessagingAppHelper import android.tools.device.flicker.rules.ChangeDisplayOrientationRule import android.tools.device.flicker.rules.LaunchAppRule import android.tools.device.flicker.rules.RemoveAllTasksButHomeRule import androidx.test.platform.app.InstrumentationRegistry import org.junit.rules.RuleChain object Utils { private val instrumentation: Instrumentation = InstrumentationRegistry.getInstrumentation() fun testSetupRule(navigationMode: NavBar, rotation: Rotation): RuleChain { return RuleChain.outerRule(UnlockScreenRule()) .around( NavigationModeRule(navigationMode.value, /* changeNavigationModeAfterTest */ false) ) .around( LaunchAppRule(MessagingAppHelper(instrumentation), clearCacheAfterParsing = false) ) .around(RemoveAllTasksButHomeRule()) .around( ChangeDisplayOrientationRule( rotation, resetOrientationAfterTest = false, clearCacheAfterParsing = false ) ) .around(PressHomeRule()) } } tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButton3ButtonLandscape.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButton3ButtonLandscape : CloseAppBackButton(NavBar.MODE_3BUTTON, Rotation.ROTATION_90) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } } tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButton3ButtonPortrait.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButton3ButtonPortrait : CloseAppBackButton(NavBar.MODE_3BUTTON, Rotation.ROTATION_0) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } } tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButtonGesturalNavLandscape.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButtonGesturalNavLandscape : CloseAppBackButton(NavBar.MODE_GESTURAL, Rotation.ROTATION_90) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } } tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButtonGesturalNavPortrait.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButtonGesturalNavPortrait : CloseAppBackButton(NavBar.MODE_GESTURAL, Rotation.ROTATION_0) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } } Loading
tests/FlickerTests/src/com/android/server/wm/flicker/service/Utils.kt 0 → 100644 +53 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service import android.app.Instrumentation import android.platform.test.rule.NavigationModeRule import android.platform.test.rule.PressHomeRule import android.platform.test.rule.UnlockScreenRule import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.device.apphelpers.MessagingAppHelper import android.tools.device.flicker.rules.ChangeDisplayOrientationRule import android.tools.device.flicker.rules.LaunchAppRule import android.tools.device.flicker.rules.RemoveAllTasksButHomeRule import androidx.test.platform.app.InstrumentationRegistry import org.junit.rules.RuleChain object Utils { private val instrumentation: Instrumentation = InstrumentationRegistry.getInstrumentation() fun testSetupRule(navigationMode: NavBar, rotation: Rotation): RuleChain { return RuleChain.outerRule(UnlockScreenRule()) .around( NavigationModeRule(navigationMode.value, /* changeNavigationModeAfterTest */ false) ) .around( LaunchAppRule(MessagingAppHelper(instrumentation), clearCacheAfterParsing = false) ) .around(RemoveAllTasksButHomeRule()) .around( ChangeDisplayOrientationRule( rotation, resetOrientationAfterTest = false, clearCacheAfterParsing = false ) ) .around(PressHomeRule()) } }
tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButton3ButtonLandscape.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButton3ButtonLandscape : CloseAppBackButton(NavBar.MODE_3BUTTON, Rotation.ROTATION_90) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } }
tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButton3ButtonPortrait.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButton3ButtonPortrait : CloseAppBackButton(NavBar.MODE_3BUTTON, Rotation.ROTATION_0) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } }
tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButtonGesturalNavLandscape.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButtonGesturalNavLandscape : CloseAppBackButton(NavBar.MODE_GESTURAL, Rotation.ROTATION_90) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } }
tests/FlickerTests/src/com/android/server/wm/flicker/service/close/flicker/CloseAppBackButtonGesturalNavPortrait.kt 0 → 100644 +44 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server.wm.flicker.service.close.flicker import android.tools.common.NavBar import android.tools.common.Rotation import android.tools.common.flicker.FlickerConfig import android.tools.common.flicker.annotation.ExpectedScenarios import android.tools.common.flicker.annotation.FlickerConfigProvider import android.tools.common.flicker.config.FlickerConfig import android.tools.common.flicker.config.FlickerServiceConfig import android.tools.device.flicker.junit.FlickerServiceJUnit4ClassRunner import com.android.server.wm.flicker.service.close.scenarios.CloseAppBackButton import org.junit.Test import org.junit.runner.RunWith @RunWith(FlickerServiceJUnit4ClassRunner::class) class CloseAppBackButtonGesturalNavPortrait : CloseAppBackButton(NavBar.MODE_GESTURAL, Rotation.ROTATION_0) { @ExpectedScenarios(["APP_CLOSE_TO_HOME"]) @Test override fun closeAppBackButtonTest() = super.closeAppBackButtonTest() companion object { @JvmStatic @FlickerConfigProvider fun flickerConfigProvider(): FlickerConfig = FlickerConfig().use(FlickerServiceConfig.DEFAULT) } }