Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5813fed8 authored by Dave Mankoff's avatar Dave Mankoff
Browse files

Remove unused Dependency items.

Also cleanup a few tests to no longer rely on Dependency when the
implementations of the class-under-test don't use it.

Flag: NA
Bug: 138786270
Test: atest SystemUITests
Change-Id: I367dda598dee23771146c568ebcee299f0b7cb77
parent c534686c
Loading
Loading
Loading
Loading
+1 −30
Original line number Diff line number Diff line
@@ -22,17 +22,13 @@ import android.util.ArrayMap;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.logging.MetricsLogger;
import com.android.internal.logging.UiEventLogger;
import com.android.internal.statusbar.IStatusBarService;
import com.android.internal.util.Preconditions;
import com.android.keyguard.KeyguardUpdateMonitor;
import com.android.systemui.accessibility.AccessibilityButtonModeObserver;
import com.android.systemui.accessibility.AccessibilityButtonTargetsObserver;
import com.android.systemui.animation.DialogTransitionAnimator;
import com.android.systemui.assist.AssistManager;
import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.dagger.qualifiers.Background;
import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.flags.FeatureFlags;
import com.android.systemui.fragments.FragmentService;
@@ -47,7 +43,6 @@ import com.android.systemui.recents.OverviewProxyService;
import com.android.systemui.settings.UserTracker;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.NotificationMediaManager;
import com.android.systemui.statusbar.NotificationRemoteInputManager;
import com.android.systemui.statusbar.notification.collection.render.GroupExpansionManager;
import com.android.systemui.statusbar.notification.collection.render.GroupMembershipManager;
import com.android.systemui.statusbar.notification.stack.AmbientState;
@@ -58,7 +53,6 @@ import com.android.systemui.statusbar.phone.StatusBarContentInsetsProvider;
import com.android.systemui.statusbar.phone.SystemUIDialogManager;
import com.android.systemui.statusbar.policy.BluetoothController;
import com.android.systemui.statusbar.policy.DeviceProvisionedController;
import com.android.systemui.statusbar.policy.FlashlightController;
import com.android.systemui.statusbar.window.StatusBarWindowController;
import com.android.systemui.tuner.TunablePadding.TunablePaddingService;
import com.android.systemui.tuner.TunerService;
@@ -70,6 +64,7 @@ import java.util.function.Consumer;
import javax.inject.Inject;
import javax.inject.Named;


/**
 * Class to handle ugly dependencies throughout sysui until we determine the
 * long-term dependency injection solution.
@@ -96,10 +91,6 @@ public class Dependency {
     * Key for getting a Handler for receiving time tick broadcasts on.
     */
    public static final String TIME_TICK_HANDLER_NAME = "time_tick_handler";
    /**
     * Generic handler on the main thread.
     */
    private static final String MAIN_HANDLER_NAME = "main_handler";

    /**
     * An email address to send memory leak reports to by default.
@@ -121,11 +112,6 @@ public class Dependency {
     */
    public static final DependencyKey<Handler> TIME_TICK_HANDLER =
            new DependencyKey<>(TIME_TICK_HANDLER_NAME);
    /**
     * Generic handler on the main thread.
     */
    public static final DependencyKey<Handler> MAIN_HANDLER =
            new DependencyKey<>(MAIN_HANDLER_NAME);

    private final ArrayMap<Object, Object> mDependencies = new ArrayMap<>();
    private final ArrayMap<Object, LazyDependencyCreator> mProviders = new ArrayMap<>();
@@ -134,7 +120,6 @@ public class Dependency {

    @Inject Lazy<BroadcastDispatcher> mBroadcastDispatcher;
    @Inject Lazy<BluetoothController> mBluetoothController;
    @Inject Lazy<FlashlightController> mFlashlightController;
    @Inject Lazy<KeyguardUpdateMonitor> mKeyguardUpdateMonitor;
    @Inject Lazy<DeviceProvisionedController> mDeviceProvisionedController;
    @Inject Lazy<PluginManager> mPluginManager;
@@ -150,15 +135,10 @@ public class Dependency {
    @Inject Lazy<LightBarController> mLightBarController;
    @Inject Lazy<OverviewProxyService> mOverviewProxyService;
    @Inject Lazy<NavigationModeController> mNavBarModeController;
    @Inject Lazy<AccessibilityButtonModeObserver> mAccessibilityButtonModeObserver;
    @Inject Lazy<AccessibilityButtonTargetsObserver> mAccessibilityButtonListController;
    @Inject Lazy<IStatusBarService> mIStatusBarService;
    @Inject Lazy<NotificationRemoteInputManager.Callback> mNotificationRemoteInputManagerCallback;
    @Inject Lazy<NavigationBarController> mNavigationBarController;
    @Inject Lazy<StatusBarStateController> mStatusBarStateController;
    @Inject Lazy<NotificationMediaManager> mNotificationMediaManager;
    @Inject @Background Lazy<Looper> mBgLooper;
    @Inject @Main Lazy<Handler> mMainHandler;
    @Inject @Named(TIME_TICK_HANDLER_NAME) Lazy<Handler> mTimeTickHandler;
    @Inject Lazy<SysUiState> mSysUiStateFlagsContainer;
    @Inject Lazy<CommandQueue> mCommandQueue;
@@ -187,10 +167,8 @@ public class Dependency {
        // on imports.
        mProviders.put(TIME_TICK_HANDLER, mTimeTickHandler::get);
        mProviders.put(BG_LOOPER, mBgLooper::get);
        mProviders.put(MAIN_HANDLER, mMainHandler::get);
        mProviders.put(BroadcastDispatcher.class, mBroadcastDispatcher::get);
        mProviders.put(BluetoothController.class, mBluetoothController::get);
        mProviders.put(FlashlightController.class, mFlashlightController::get);
        mProviders.put(KeyguardUpdateMonitor.class, mKeyguardUpdateMonitor::get);
        mProviders.put(DeviceProvisionedController.class, mDeviceProvisionedController::get);
        mProviders.put(PluginManager.class, mPluginManager::get);
@@ -205,13 +183,6 @@ public class Dependency {
        mProviders.put(LightBarController.class, mLightBarController::get);
        mProviders.put(OverviewProxyService.class, mOverviewProxyService::get);
        mProviders.put(NavigationModeController.class, mNavBarModeController::get);
        mProviders.put(AccessibilityButtonModeObserver.class,
                mAccessibilityButtonModeObserver::get);
        mProviders.put(AccessibilityButtonTargetsObserver.class,
                mAccessibilityButtonListController::get);
        mProviders.put(IStatusBarService.class, mIStatusBarService::get);
        mProviders.put(NotificationRemoteInputManager.Callback.class,
                mNotificationRemoteInputManagerCallback::get);
        mProviders.put(NavigationBarController.class, mNavigationBarController::get);
        mProviders.put(StatusBarStateController.class, mStatusBarStateController::get);
        mProviders.put(NotificationMediaManager.class, mNotificationMediaManager::get);
+7 −5
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.systemui.navigationbar;
import static android.provider.Settings.Secure.ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU;
import static android.provider.Settings.Secure.ACCESSIBILITY_BUTTON_MODE_GESTURE;
import static android.provider.Settings.Secure.ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR;

import static com.android.systemui.navigationbar.gestural.EdgeBackGestureHandler.DEBUG_MISSING_GESTURE_TAG;
import static com.android.systemui.shared.recents.utilities.Utilities.isLargeScreen;
import static com.android.wm.shell.Flags.enableTaskbarNavbarUnification;
@@ -28,7 +29,6 @@ import android.content.pm.ActivityInfo;
import android.content.res.Configuration;
import android.hardware.display.DisplayManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.RemoteException;
import android.os.Trace;
import android.os.UserHandle;
@@ -70,9 +70,11 @@ import dalvik.annotation.optimization.NeverCompile;

import java.io.PrintWriter;
import java.util.Optional;
import java.util.concurrent.Executor;

import javax.inject.Inject;


@SysUISingleton
public class NavigationBarControllerImpl implements
        ConfigurationController.ConfigurationListener,
@@ -82,7 +84,7 @@ public class NavigationBarControllerImpl implements
    private static final String TAG = NavigationBarControllerImpl.class.getSimpleName();

    private final Context mContext;
    private final Handler mHandler;
    private final Executor mExecutor;
    private final NavigationBarComponent.Factory mNavigationBarComponentFactory;
    private final SecureSettings mSecureSettings;
    private final DisplayTracker mDisplayTracker;
@@ -119,7 +121,7 @@ public class NavigationBarControllerImpl implements
            NavigationModeController navigationModeController,
            SysUiState sysUiFlagsContainer,
            CommandQueue commandQueue,
            @Main Handler mainHandler,
            @Main Executor mainExecutor,
            ConfigurationController configurationController,
            NavBarHelper navBarHelper,
            TaskbarDelegate taskbarDelegate,
@@ -133,7 +135,7 @@ public class NavigationBarControllerImpl implements
            SecureSettings secureSettings,
            DisplayTracker displayTracker) {
        mContext = context;
        mHandler = mainHandler;
        mExecutor = mainExecutor;
        mNavigationBarComponentFactory = navigationBarComponentFactory;
        mSecureSettings = secureSettings;
        mDisplayTracker = displayTracker;
@@ -193,7 +195,7 @@ public class NavigationBarControllerImpl implements
        mNavMode = mode;
        updateAccessibilityButtonModeIfNeeded();

        mHandler.post(() -> {
        mExecutor.execute(() -> {
            // create/destroy nav bar based on nav mode only in unfolded state
            if (oldMode != mNavMode) {
                updateNavbarForTaskbar();
+7 −6
Original line number Diff line number Diff line
@@ -15,14 +15,11 @@
package com.android.systemui;

import static org.junit.Assert.assertEquals;
import static org.mockito.Mockito.mock;

import android.os.Looper;

import androidx.test.filters.SmallTest;

import com.android.systemui.statusbar.policy.FlashlightController;

import org.junit.Assert;
import org.junit.Test;

@@ -33,9 +30,9 @@ public class DependencyTest extends SysuiTestCase {

    @Test
    public void testClassDependency() {
        FlashlightController f = mock(FlashlightController.class);
        mDependency.injectTestDependency(FlashlightController.class, f);
        Assert.assertEquals(f, Dependency.get(FlashlightController.class));
        FakeClass f = new FakeClass();
        mDependency.injectTestDependency(FakeClass.class, f);
        Assert.assertEquals(f, Dependency.get(FakeClass.class));
    }

    @Test
@@ -53,4 +50,8 @@ public class DependencyTest extends SysuiTestCase {
        Dependency dependency = initializer.getSysUIComponent().createDependency();
        dependency.start();
    }

    private static class FakeClass {

    }
}
+33 −48
Original line number Diff line number Diff line
@@ -22,10 +22,9 @@ import static android.provider.Settings.Secure.ACCESSIBILITY_BUTTON_MODE_NAVIGAT
import static com.google.common.truth.Truth.assertThat;

import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

import android.app.ActivityManager;
import android.content.Context;
import android.content.ContextWrapper;
import android.hardware.display.DisplayManager;
@@ -75,13 +74,13 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {
    private AccessibilityManager mAccessibilityManager;
    private KeyguardUpdateMonitor mKeyguardUpdateMonitor;
    private AccessibilityFloatingMenuController mController;
    @Mock
    private AccessibilityButtonTargetsObserver mTargetsObserver;
    @Mock
    private AccessibilityButtonModeObserver mModeObserver;
    @Captor
    private ArgumentCaptor<KeyguardUpdateMonitorCallback> mKeyguardCallbackCaptor;
    private KeyguardUpdateMonitorCallback mKeyguardCallback;
    private int mLastButtonMode;
    private String mLastButtonTargets;
    @Mock
    private SecureSettings mSecureSettings;

@@ -97,10 +96,14 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

        mWindowManager = mContext.getSystemService(WindowManager.class);
        mAccessibilityManager = mContext.getSystemService(AccessibilityManager.class);
        mLastButtonTargets = Settings.Secure.getStringForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, UserHandle.USER_CURRENT);
        mLastButtonMode = Settings.Secure.getIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE, UserHandle.USER_CURRENT);

        when(mTargetsObserver.getCurrentAccessibilityButtonTargets())
                .thenReturn(Settings.Secure.getStringForUser(mContextWrapper.getContentResolver(),
                        Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, UserHandle.USER_CURRENT));

        when(mModeObserver.getCurrentAccessibilityButtonMode())
                .thenReturn(Settings.Secure.getIntForUser(mContextWrapper.getContentResolver(),
                        Settings.Secure.ACCESSIBILITY_BUTTON_MODE, UserHandle.USER_CURRENT));
    }

    @After
@@ -109,13 +112,6 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {
            mController.onAccessibilityButtonTargetsChanged("");
            mController = null;
        }

        Settings.Secure.putStringForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, mLastButtonTargets,
                UserHandle.USER_CURRENT);
        Settings.Secure.putIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE, mLastButtonMode,
                UserHandle.USER_CURRENT);
    }

    @Test
@@ -227,9 +223,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonModeChanged_floatingModeAndHasButtonTargets_showWidget() {
        Settings.Secure.putStringForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, TEST_A11Y_BTN_TARGETS,
                ActivityManager.getCurrentUser());
        when(mTargetsObserver.getCurrentAccessibilityButtonTargets())
                .thenReturn(TEST_A11Y_BTN_TARGETS);
        mController = setUpController();

        mController.onAccessibilityButtonModeChanged(ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
@@ -239,8 +234,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonModeChanged_floatingModeAndNoButtonTargets_destroyWidget() {
        Settings.Secure.putStringForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, "", ActivityManager.getCurrentUser());
        when(mTargetsObserver.getCurrentAccessibilityButtonTargets()).thenReturn("");

        mController = setUpController();

        mController.onAccessibilityButtonModeChanged(ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
@@ -250,9 +245,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonModeChanged_navBarModeAndHasButtonTargets_destroyWidget() {
        Settings.Secure.putStringForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, TEST_A11Y_BTN_TARGETS,
                ActivityManager.getCurrentUser());
        when(mTargetsObserver.getCurrentAccessibilityButtonTargets())
                .thenReturn(TEST_A11Y_BTN_TARGETS);
        mController = setUpController();

        mController.onAccessibilityButtonModeChanged(ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR);
@@ -262,8 +256,7 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonModeChanged_navBarModeAndNoButtonTargets_destroyWidget() {
        Settings.Secure.putStringForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, "", ActivityManager.getCurrentUser());
        when(mTargetsObserver.getCurrentAccessibilityButtonTargets()).thenReturn("");
        mController = setUpController();

        mController.onAccessibilityButtonModeChanged(ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR);
@@ -273,9 +266,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonTargetsChanged_floatingModeAndHasButtonTargets_showWidget() {
        Settings.Secure.putIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE, ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU,
                ActivityManager.getCurrentUser());
        when(mModeObserver.getCurrentAccessibilityButtonMode())
                .thenReturn(ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
        mController = setUpController();

        mController.onAccessibilityButtonTargetsChanged(TEST_A11Y_BTN_TARGETS);
@@ -285,9 +277,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonTargetsChanged_floatingModeAndNoButtonTargets_destroyWidget() {
        Settings.Secure.putIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE, ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU,
                ActivityManager.getCurrentUser());
        when(mModeObserver.getCurrentAccessibilityButtonMode())
                .thenReturn(ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
        mController = setUpController();

        mController.onAccessibilityButtonTargetsChanged("");
@@ -297,9 +288,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonTargetsChanged_navBarModeAndHasButtonTargets_destroyWidget() {
        Settings.Secure.putIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
                ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR, ActivityManager.getCurrentUser());
        when(mModeObserver.getCurrentAccessibilityButtonMode())
                .thenReturn(ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR);
        mController = setUpController();

        mController.onAccessibilityButtonTargetsChanged(TEST_A11Y_BTN_TARGETS);
@@ -309,9 +299,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onAccessibilityButtonTargetsChanged_navBarModeAndNoButtonTargets_destroyWidget() {
        Settings.Secure.putIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE,
                ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR, ActivityManager.getCurrentUser());
        when(mModeObserver.getCurrentAccessibilityButtonMode())
                .thenReturn(ACCESSIBILITY_BUTTON_MODE_NAVIGATION_BAR);
        mController = setUpController();

        mController.onAccessibilityButtonTargetsChanged("");
@@ -321,9 +310,8 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {

    @Test
    public void onTargetsChanged_isFloatingViewLayerControllerCreated() {
        Settings.Secure.putIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE, ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU,
                UserHandle.USER_CURRENT);
        when(mModeObserver.getCurrentAccessibilityButtonMode())
                .thenReturn(ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);

        mController = setUpController();
        mController.onAccessibilityButtonTargetsChanged(TEST_A11Y_BTN_TARGETS);
@@ -335,8 +323,6 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {
        final WindowManager windowManager = mContext.getSystemService(WindowManager.class);
        final DisplayManager displayManager = mContext.getSystemService(DisplayManager.class);
        final FakeDisplayTracker displayTracker = new FakeDisplayTracker(mContext);
        mTargetsObserver = spy(Dependency.get(AccessibilityButtonTargetsObserver.class));
        mModeObserver = spy(Dependency.get(AccessibilityButtonModeObserver.class));
        mKeyguardUpdateMonitor = Dependency.get(KeyguardUpdateMonitor.class);
        final AccessibilityFloatingMenuController controller =
                new AccessibilityFloatingMenuController(mContextWrapper, windowManager,
@@ -348,12 +334,11 @@ public class AccessibilityFloatingMenuControllerTest extends SysuiTestCase {
    }

    private void enableAccessibilityFloatingMenuConfig() {
        Settings.Secure.putIntForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_MODE, ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU,
                ActivityManager.getCurrentUser());
        Settings.Secure.putStringForUser(mContextWrapper.getContentResolver(),
                Settings.Secure.ACCESSIBILITY_BUTTON_TARGETS, TEST_A11Y_BTN_TARGETS,
                ActivityManager.getCurrentUser());
        when(mTargetsObserver.getCurrentAccessibilityButtonTargets())
                .thenReturn(TEST_A11Y_BTN_TARGETS);

        when(mModeObserver.getCurrentAccessibilityButtonMode())
                .thenReturn(ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU);
    }

    private void captureKeyguardUpdateMonitorCallback() {
+5 −4
Original line number Diff line number Diff line
@@ -43,13 +43,11 @@ import static org.mockito.Mockito.when;

import android.content.res.Configuration;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper.RunWithLooper;
import android.util.SparseArray;

import androidx.test.filters.SmallTest;

import com.android.dx.mockito.inline.extended.StaticMockitoSession;
import com.android.systemui.Dependency;
import com.android.systemui.SysuiTestCase;
import com.android.systemui.dump.DumpManager;
import com.android.systemui.model.SysUiState;
@@ -61,7 +59,9 @@ import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.phone.AutoHideController;
import com.android.systemui.statusbar.phone.LightBarController;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.util.concurrency.FakeExecutor;
import com.android.systemui.util.settings.SecureSettings;
import com.android.systemui.util.time.FakeSystemClock;
import com.android.wm.shell.back.BackAnimation;
import com.android.wm.shell.pip.Pip;

@@ -76,7 +76,6 @@ import java.util.Optional;

/** atest NavigationBarControllerTest */
@RunWith(AndroidTestingRunner.class)
@RunWithLooper
@SmallTest
public class NavigationBarControllerImplTest extends SysuiTestCase {

@@ -88,6 +87,8 @@ public class NavigationBarControllerImplTest extends SysuiTestCase {
    private StaticMockitoSession mMockitoSession;
    private FakeDisplayTracker mDisplayTracker = new FakeDisplayTracker(mContext);

    private final FakeExecutor mExecutor = new FakeExecutor(new FakeSystemClock());

    @Mock
    private CommandQueue mCommandQueue;
    @Mock
@@ -104,7 +105,7 @@ public class NavigationBarControllerImplTest extends SysuiTestCase {
                        mock(NavigationModeController.class),
                        mock(SysUiState.class),
                        mCommandQueue,
                        Dependency.get(Dependency.MAIN_HANDLER),
                        mExecutor,
                        mock(ConfigurationController.class),
                        mock(NavBarHelper.class),
                        mTaskbarDelegate,