summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2022-10-12 06:20:06 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2022-10-12 06:20:06 +0000
commitfb028ee4d41f1dbdb53f56285c342e73de42e81f (patch)
tree25c80eb9d432c69b4e2f85e78563d9d6fb2aedc5
parent9dc75010fac86c07f9c8e485380eef039d3cf938 (diff)
parenta986bd8cb8b70f50873fe4458e172e5f26b67a3c (diff)
Merge "Add test to ensure config changes passed down to TaskbarDelegate" into tm-qpr-dev am: a986bd8cb8
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20154522 Change-Id: Id1395a3bcb7de34de9bec8d69584b4239711b2a9 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavigationBarControllerTest.java32
1 files changed, 31 insertions, 1 deletions
diff --git a/packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavigationBarControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavigationBarControllerTest.java
index b0cf0612b2d2..9bf27a26a682 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavigationBarControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavigationBarControllerTest.java
@@ -19,6 +19,8 @@ package com.android.systemui.navigationbar;
import static android.view.Display.DEFAULT_DISPLAY;
import static android.view.Display.INVALID_DISPLAY;
+import static com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession;
+
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
@@ -30,20 +32,25 @@ import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
+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.flags.FeatureFlags;
import com.android.systemui.model.SysUiState;
import com.android.systemui.recents.OverviewProxyService;
+import com.android.systemui.shared.recents.utilities.Utilities;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.phone.AutoHideController;
import com.android.systemui.statusbar.phone.LightBarController;
@@ -72,11 +79,14 @@ public class NavigationBarControllerTest extends SysuiTestCase {
private NavigationBarController mNavigationBarController;
private NavigationBar mDefaultNavBar;
private NavigationBar mSecondaryNavBar;
+ private StaticMockitoSession mMockitoSession;
@Mock
private CommandQueue mCommandQueue;
@Mock
private NavigationBarComponent.Factory mNavigationBarFactory;
+ @Mock
+ TaskbarDelegate mTaskbarDelegate;
@Before
public void setUp() {
@@ -90,7 +100,7 @@ public class NavigationBarControllerTest extends SysuiTestCase {
Dependency.get(Dependency.MAIN_HANDLER),
mock(ConfigurationController.class),
mock(NavBarHelper.class),
- mock(TaskbarDelegate.class),
+ mTaskbarDelegate,
mNavigationBarFactory,
mock(StatusBarKeyguardViewManager.class),
mock(DumpManager.class),
@@ -100,6 +110,7 @@ public class NavigationBarControllerTest extends SysuiTestCase {
Optional.of(mock(BackAnimation.class)),
mock(FeatureFlags.class)));
initializeNavigationBars();
+ mMockitoSession = mockitoSession().mockStatic(Utilities.class).startMocking();
}
private void initializeNavigationBars() {
@@ -120,6 +131,7 @@ public class NavigationBarControllerTest extends SysuiTestCase {
mNavigationBarController = null;
mDefaultNavBar = null;
mSecondaryNavBar = null;
+ mMockitoSession.finishMocking();
}
@Test
@@ -268,4 +280,22 @@ public class NavigationBarControllerTest extends SysuiTestCase {
public void test3ButtonTaskbarFlagDisabledNoRegister() {
verify(mCommandQueue, never()).addCallback(any(TaskbarDelegate.class));
}
+
+
+ @Test
+ public void testConfigurationChange_taskbarNotInitialized() {
+ Configuration configuration = mContext.getResources().getConfiguration();
+ when(Utilities.isTablet(any())).thenReturn(true);
+ mNavigationBarController.onConfigChanged(configuration);
+ verify(mTaskbarDelegate, never()).onConfigurationChanged(configuration);
+ }
+
+ @Test
+ public void testConfigurationChange_taskbarInitialized() {
+ Configuration configuration = mContext.getResources().getConfiguration();
+ when(Utilities.isTablet(any())).thenReturn(true);
+ when(mTaskbarDelegate.isInitialized()).thenReturn(true);
+ mNavigationBarController.onConfigChanged(configuration);
+ verify(mTaskbarDelegate, times(1)).onConfigurationChanged(configuration);
+ }
}