Test swiping up from a killed launcher

Bug: 121164587
Test: StartLauncherViaGestureTests
Change-Id: I01c5bfc0aa23418bad7d44b8d9cf8b95cbe0b320
diff --git a/quickstep/tests/src/com/android/quickstep/RaceConditionsTests.java b/quickstep/tests/src/com/android/quickstep/StartLauncherViaGestureTests.java
similarity index 80%
rename from quickstep/tests/src/com/android/quickstep/RaceConditionsTests.java
rename to quickstep/tests/src/com/android/quickstep/StartLauncherViaGestureTests.java
index f132b12..52f3c53 100644
--- a/quickstep/tests/src/com/android/quickstep/RaceConditionsTests.java
+++ b/quickstep/tests/src/com/android/quickstep/StartLauncherViaGestureTests.java
@@ -29,26 +29,26 @@
 import com.android.quickstep.QuickStepOnOffRule.Mode;
 import com.android.quickstep.QuickStepOnOffRule.QuickstepOnOff;
 
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
 @LargeTest
 @RunWith(AndroidJUnit4.class)
-public class RaceConditionsTests extends AbstractQuickStepTest {
+public class StartLauncherViaGestureTests extends AbstractQuickStepTest {
+    @Override
+    @Before
+    public void setUp() throws Exception {
+        super.setUp();
+        // Start an activity where the gestures start.
+        startAppFast(resolveSystemApp(Intent.CATEGORY_APP_CALCULATOR));
+    }
+
     private void runTest(String... eventSequence) {
         final RaceConditionReproducer eventProcessor = new RaceConditionReproducer(eventSequence);
 
         // Destroy Launcher activity.
-        executeOnLauncher(launcher -> {
-            if (launcher != null) {
-                launcher.finish();
-            }
-        });
-        waitForLauncherCondition(
-                "Launcher still active", launcher -> launcher == null, DEFAULT_UI_TIMEOUT);
-
-        // Start an activity where we'll press home.
-        startAppFast(resolveSystemApp(Intent.CATEGORY_APP_CALCULATOR));
+        closeLauncherActivity();
 
         // The test action.
         eventProcessor.startIteration();
@@ -58,7 +58,7 @@
 
     @Test
     @QuickstepOnOff(mode = Mode.ON)
-    public void testPressHomeToStartLauncher() {
+    public void testPressHome() {
         runTest(enterEvt(Launcher.ON_CREATE_EVT),
                 exitEvt(Launcher.ON_CREATE_EVT),
                 enterEvt(OtherActivityTouchConsumer.DOWN_EVT),
@@ -69,4 +69,11 @@
                 enterEvt(Launcher.ON_CREATE_EVT),
                 exitEvt(Launcher.ON_CREATE_EVT));
     }
-}
+
+    @Test
+    @QuickstepOnOff(mode = Mode.ON)
+    public void testSwipeToOverview() {
+        closeLauncherActivity();
+        mLauncher.getBackground().switchToOverview();
+    }
+}
\ No newline at end of file
diff --git a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
index 338fd85..8c03e4b 100644
--- a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
+++ b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
@@ -347,4 +347,15 @@
                 PackageManager.MATCH_SYSTEM_ONLY).
                 activityInfo.packageName;
     }
+
+    protected void closeLauncherActivity() {
+        // Destroy Launcher activity.
+        executeOnLauncher(launcher -> {
+            if (launcher != null) {
+                launcher.finish();
+            }
+        });
+        waitForLauncherCondition(
+                "Launcher still active", launcher -> launcher == null, DEFAULT_UI_TIMEOUT);
+    }
 }