Support for running tests out of Launcher process
This CL doesn't turn it on yet.
Bug: 113056917
Test: TaplTests
Change-Id: I01007cb9ab330166cbb8a4c1fcd0cee0c60aeba5
diff --git a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
index ba7d9c5..75efea4 100644
--- a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
+++ b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
@@ -82,12 +82,17 @@
protected final LauncherInstrumentation mLauncher;
protected Context mTargetContext;
protected String mTargetPackage;
+ protected final boolean mIsInLauncherProcess;
private static final String TAG = "AbstractLauncherUiTest";
protected AbstractLauncherUiTest() {
- mDevice = UiDevice.getInstance(getInstrumentation());
- mLauncher = new LauncherInstrumentation(getInstrumentation());
+ final Instrumentation instrumentation = getInstrumentation();
+ mDevice = UiDevice.getInstance(instrumentation);
+ mLauncher = new LauncherInstrumentation(instrumentation);
+
+ mIsInLauncherProcess = instrumentation.getTargetContext().getPackageName().equals(
+ mDevice.getLauncherPackageName());
}
@Rule
@@ -261,6 +266,7 @@
}
protected <T> T getFromLauncher(Function<Launcher, T> f) {
+ if (!mIsInLauncherProcess) return null;
return getOnUiThread(() -> f.apply(mActivityMonitor.getActivity()));
}
@@ -287,6 +293,7 @@
// flakiness.
protected boolean waitForLauncherCondition(
Function<Launcher, Boolean> condition, long timeout) {
+ if (!mIsInLauncherProcess) return true;
return Wait.atMost(() -> getFromLauncher(condition), timeout);
}