From 2477f89fd25645098176000bfda1075f69eecbca Mon Sep 17 00:00:00 2001 From: Brian Isganitis Date: Tue, 16 Jul 2024 18:36:18 -0400 Subject: [PATCH] Disable model loading in Taskbar unit tests. We do not need this for now and it is making development more difficult on macs. Test: Taskbar unit tests Bug: 230027385 Flag: TEST_ONLY Change-Id: I2e74e91e21aa650544d8264fab7b336b97b52547 --- .../launcher3/taskbar/TaskbarViewController.java | 11 ++++++++++- .../launcher3/taskbar/rules/TaskbarUnitTestRule.kt | 6 ++++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java index 527e3a3cc1..b21c4145b1 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarViewController.java @@ -46,6 +46,7 @@ import android.view.View; import android.view.animation.Interpolator; import androidx.annotation.Nullable; +import androidx.annotation.VisibleForTesting; import androidx.core.view.OneShotPreDrawListener; import com.android.app.animation.Interpolators; @@ -96,6 +97,8 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar public static final int ALPHA_INDEX_SMALL_SCREEN = 6; private static final int NUM_ALPHA_CHANNELS = 7; + private static boolean sEnableModelLoadingForTests = true; + private final TaskbarActivityContext mActivity; private final TaskbarView mTaskbarView; private final MultiValueAlpha mTaskbarIconAlpha; @@ -192,7 +195,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar mTaskbarIconTranslationXForPinning.updateValue(pinningValue); mModelCallbacks.init(controllers); - if (mActivity.isUserSetupComplete()) { + if (mActivity.isUserSetupComplete() && sEnableModelLoadingForTests) { // Only load the callbacks if user setup is completed LauncherAppState.getInstance(mActivity).getModel().addCallbacksAndLoad(mModelCallbacks); } @@ -924,4 +927,10 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar mModelCallbacks.dumpLogs(prefix + "\t", pw); } + + /** Enables model loading for tests. */ + @VisibleForTesting + public static void enableModelLoadingForTests(boolean enable) { + sEnableModelLoadingForTests = enable; + } } diff --git a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt index a966d2aedb..bbcf566e06 100644 --- a/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt +++ b/quickstep/tests/multivalentTests/src/com/android/launcher3/taskbar/rules/TaskbarUnitTestRule.kt @@ -29,10 +29,10 @@ import com.android.launcher3.LauncherAppState import com.android.launcher3.taskbar.TaskbarActivityContext import com.android.launcher3.taskbar.TaskbarManager import com.android.launcher3.taskbar.TaskbarNavButtonController.TaskbarNavButtonCallbacks +import com.android.launcher3.taskbar.TaskbarViewController import com.android.launcher3.taskbar.rules.TaskbarUnitTestRule.InjectController import com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR import com.android.launcher3.util.LauncherMultivalentJUnit.Companion.isRunningInRobolectric -import com.android.launcher3.util.ModelTestExtensions.loadModelSync import com.android.launcher3.util.TestUtil import com.android.quickstep.AllAppsActionManager import com.android.quickstep.TouchInteractionService @@ -152,7 +152,7 @@ class TaskbarUnitTestRule( } try { - LauncherAppState.getInstance(context).model.loadModelSync() + TaskbarViewController.enableModelLoadingForTests(false) // Replace Launcher Taskbar window with test instance. instrumentation.runOnMainSync { @@ -167,6 +167,8 @@ class TaskbarUnitTestRule( taskbarManager.destroy() launcherTaskbarManager?.setSuspended(false) } + + TaskbarViewController.enableModelLoadingForTests(true) } } }