diff --git a/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java b/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java index a10b24dbca..7d82944c2d 100644 --- a/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java +++ b/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java @@ -61,7 +61,6 @@ import com.android.launcher3.util.Wait; import com.android.launcher3.util.rule.FailureWatcher; import com.android.launcher3.util.rule.SamplerRule; import com.android.launcher3.util.rule.ScreenRecordRule; -import com.android.launcher3.util.rule.TestIsolationRule; import com.android.launcher3.util.rule.TestStabilityRule; import com.android.launcher3.util.rule.ViewCaptureRule; import com.android.quickstep.views.RecentsView; @@ -94,6 +93,9 @@ public class FallbackRecentsTest { @Rule public final TestRule mDisableHeadsUpNotification = disableHeadsUpNotification(); + @Rule + public final TestRule mSetLauncherCommand; + @Rule public final TestRule mOrderSensitiveRules; @@ -114,7 +116,19 @@ public class FallbackRecentsTest { Utilities.enableRunningInTestHarnessForTests(); } - final TestRule setLauncherCommand = (base, desc) -> new Statement() { + final ViewCaptureRule viewCaptureRule = new ViewCaptureRule( + RecentsActivity.ACTIVITY_TRACKER::getCreatedActivity); + mOrderSensitiveRules = RuleChain + .outerRule(new SamplerRule()) + .around(new NavigationModeSwitchRule(mLauncher)) + .around(new FailureWatcher(mLauncher, viewCaptureRule::getViewCaptureData)) + .around(viewCaptureRule); + + mOtherLauncherActivity = context.getPackageManager().queryIntentActivities( + getHomeIntentInPackage(context), + MATCH_DISABLED_COMPONENTS).get(0).activityInfo; + + mSetLauncherCommand = (base, desc) -> new Statement() { @Override public void evaluate() throws Throwable { TestCommandReceiver.callCommand(TestCommandReceiver.ENABLE_TEST_LAUNCHER); @@ -138,21 +152,6 @@ public class FallbackRecentsTest { } }; - final ViewCaptureRule viewCaptureRule = new ViewCaptureRule( - RecentsActivity.ACTIVITY_TRACKER::getCreatedActivity); - mOrderSensitiveRules = RuleChain - .outerRule(new SamplerRule()) - .around(new TestStabilityRule()) - .around(new NavigationModeSwitchRule(mLauncher)) - .around(new FailureWatcher(mLauncher, viewCaptureRule::getViewCaptureData)) - .around(viewCaptureRule) - .around(new TestIsolationRule(mLauncher)) - .around(setLauncherCommand); - - mOtherLauncherActivity = context.getPackageManager().queryIntentActivities( - getHomeIntentInPackage(context), - MATCH_DISABLED_COMPONENTS).get(0).activityInfo; - if (TestHelpers.isInLauncherProcess()) { mLauncher.setSystemHealthSupplier(startTime -> TestCommandReceiver.callCommand( TestCommandReceiver.GET_SYSTEM_HEALTH_MESSAGE, startTime.toString()). diff --git a/tests/Android.bp b/tests/Android.bp index 1471c08a78..e1b97deffd 100644 --- a/tests/Android.bp +++ b/tests/Android.bp @@ -57,7 +57,6 @@ filegroup { "src/com/android/launcher3/util/rule/SamplerRule.java", "src/com/android/launcher3/util/rule/ScreenRecordRule.java", "src/com/android/launcher3/util/rule/ShellCommandRule.java", - "src/com/android/launcher3/util/rule/TestIsolationRule.java", "src/com/android/launcher3/util/rule/TestStabilityRule.java", "src/com/android/launcher3/util/rule/TISBindRule.java", "src/com/android/launcher3/util/viewcapture_analysis/*.java", diff --git a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java index f734fe5877..3e5d717579 100644 --- a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java +++ b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java @@ -16,9 +16,11 @@ package com.android.launcher3.ui; import static androidx.test.InstrumentationRegistry.getInstrumentation; + import static com.android.launcher3.testing.shared.TestProtocol.ICON_MISSING; import static com.android.launcher3.ui.TaplTestsLauncher3.getAppPackageName; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; + import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -66,7 +68,6 @@ import com.android.launcher3.util.rule.FailureWatcher; import com.android.launcher3.util.rule.SamplerRule; import com.android.launcher3.util.rule.ScreenRecordRule; import com.android.launcher3.util.rule.ShellCommandRule; -import com.android.launcher3.util.rule.TestIsolationRule; import com.android.launcher3.util.rule.TestStabilityRule; import com.android.launcher3.util.rule.ViewCaptureRule; @@ -209,8 +210,7 @@ public abstract class AbstractLauncherUiTest { final RuleChain inner = RuleChain .outerRule(new PortraitLandscapeRunner(this)) .around(new FailureWatcher(mLauncher, viewCaptureRule::getViewCaptureData)) - .around(viewCaptureRule) - .around(new TestIsolationRule(mLauncher)); + .around(viewCaptureRule); return TestHelpers.isInLauncherProcess() ? RuleChain.outerRule(ShellCommandRule.setDefaultLauncher()).around(inner) diff --git a/tests/src/com/android/launcher3/util/rule/TestIsolationRule.java b/tests/src/com/android/launcher3/util/rule/TestIsolationRule.java deleted file mode 100644 index 592cc9b45c..0000000000 --- a/tests/src/com/android/launcher3/util/rule/TestIsolationRule.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * 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.launcher3.util.rule; - -import androidx.annotation.NonNull; - -import com.android.launcher3.tapl.LauncherInstrumentation; -import com.android.launcher3.ui.AbstractLauncherUiTest; - -import org.junit.rules.TestRule; -import org.junit.runner.Description; -import org.junit.runners.model.Statement; - -/** - * Isolates tests from some of the state created by the previous test. - */ -public class TestIsolationRule implements TestRule { - final LauncherInstrumentation mLauncher; - - public TestIsolationRule(LauncherInstrumentation launcher) { - mLauncher = launcher; - } - - @NonNull - @Override - public Statement apply(@NonNull Statement base, @NonNull Description description) { - return new Statement() { - @Override - public void evaluate() throws Throwable { - base.evaluate(); - // Make sure that Launcher workspace looks correct. - mLauncher.goHome(); - AbstractLauncherUiTest.checkDetectedLeaks(mLauncher); - } - }; - } -}