Merge "Fix UserSwitchTransitionViewMediatorTest" into rvc-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
c7d1702343
@@ -16,12 +16,12 @@
|
||||
|
||||
package com.android.systemui.car.userswitcher;
|
||||
|
||||
import android.app.ActivityManager;
|
||||
import android.car.Car;
|
||||
import android.car.user.CarUserManager;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.systemui.car.CarDeviceProvisionedController;
|
||||
import com.android.systemui.car.CarServiceProvider;
|
||||
import com.android.systemui.car.window.OverlayViewMediator;
|
||||
|
||||
@@ -36,13 +36,16 @@ public class UserSwitchTransitionViewMediator implements OverlayViewMediator,
|
||||
private static final String TAG = "UserSwitchTransitionViewMediator";
|
||||
|
||||
private final CarServiceProvider mCarServiceProvider;
|
||||
private final CarDeviceProvisionedController mCarDeviceProvisionedController;
|
||||
private final UserSwitchTransitionViewController mUserSwitchTransitionViewController;
|
||||
|
||||
@Inject
|
||||
public UserSwitchTransitionViewMediator(
|
||||
CarServiceProvider carServiceProvider,
|
||||
CarDeviceProvisionedController carDeviceProvisionedController,
|
||||
UserSwitchTransitionViewController userSwitchTransitionViewController) {
|
||||
mCarServiceProvider = carServiceProvider;
|
||||
mCarDeviceProvisionedController = carDeviceProvisionedController;
|
||||
mUserSwitchTransitionViewController = userSwitchTransitionViewController;
|
||||
}
|
||||
|
||||
@@ -74,7 +77,7 @@ public class UserSwitchTransitionViewMediator implements OverlayViewMediator,
|
||||
@VisibleForTesting
|
||||
void handleUserLifecycleEvent(CarUserManager.UserLifecycleEvent event) {
|
||||
if (event.getEventType() == CarUserManager.USER_LIFECYCLE_EVENT_TYPE_STARTING
|
||||
&& ActivityManager.getCurrentUser() == event.getUserId()) {
|
||||
&& mCarDeviceProvisionedController.getCurrentUser() == event.getUserId()) {
|
||||
mUserSwitchTransitionViewController.handleShow(event.getUserId());
|
||||
}
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.systemui.car.userswitcher;
|
||||
|
||||
import static org.mockito.Mockito.never;
|
||||
import static org.mockito.Mockito.verify;
|
||||
import static org.mockito.Mockito.when;
|
||||
|
||||
@@ -24,6 +25,8 @@ import android.test.suitebuilder.annotation.SmallTest;
|
||||
import android.testing.AndroidTestingRunner;
|
||||
import android.testing.TestableLooper;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.car.CarDeviceProvisionedController;
|
||||
import com.android.systemui.car.CarServiceProvider;
|
||||
import com.android.systemui.car.CarSystemUiTest;
|
||||
|
||||
@@ -37,13 +40,15 @@ import org.mockito.MockitoAnnotations;
|
||||
@RunWith(AndroidTestingRunner.class)
|
||||
@TestableLooper.RunWithLooper
|
||||
@SmallTest
|
||||
public class UserSwitchTransitionViewMediatorTest {
|
||||
public class UserSwitchTransitionViewMediatorTest extends SysuiTestCase {
|
||||
private static final int TEST_USER = 100;
|
||||
|
||||
private UserSwitchTransitionViewMediator mUserSwitchTransitionViewMediator;
|
||||
@Mock
|
||||
private CarServiceProvider mCarServiceProvider;
|
||||
@Mock
|
||||
private CarDeviceProvisionedController mCarDeviceProvisionedController;
|
||||
@Mock
|
||||
private UserSwitchTransitionViewController mUserSwitchTransitionViewController;
|
||||
@Mock
|
||||
private CarUserManager.UserLifecycleEvent mUserLifecycleEvent;
|
||||
@@ -53,20 +58,34 @@ public class UserSwitchTransitionViewMediatorTest {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
|
||||
mUserSwitchTransitionViewMediator = new UserSwitchTransitionViewMediator(
|
||||
mCarServiceProvider, mUserSwitchTransitionViewController);
|
||||
|
||||
mCarServiceProvider, mCarDeviceProvisionedController,
|
||||
mUserSwitchTransitionViewController);
|
||||
when(mCarDeviceProvisionedController.getCurrentUser()).thenReturn(TEST_USER);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onUserLifecycleEvent_userStarting_callsHandleShow() {
|
||||
public void onUserLifecycleEvent_userStarting_isCurrentUser_callsHandleShow() {
|
||||
when(mUserLifecycleEvent.getEventType()).thenReturn(
|
||||
CarUserManager.USER_LIFECYCLE_EVENT_TYPE_STARTING);
|
||||
when(mUserLifecycleEvent.getUserId()).thenReturn(TEST_USER);
|
||||
|
||||
mUserSwitchTransitionViewMediator.handleUserLifecycleEvent(mUserLifecycleEvent);
|
||||
|
||||
verify(mUserSwitchTransitionViewController).handleShow(TEST_USER);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onUserLifecycleEvent_userStarting_isNotCurrentUser_doesNotCallHandleShow() {
|
||||
when(mUserLifecycleEvent.getEventType()).thenReturn(
|
||||
CarUserManager.USER_LIFECYCLE_EVENT_TYPE_STARTING);
|
||||
when(mUserLifecycleEvent.getUserId()).thenReturn(TEST_USER);
|
||||
when(mCarDeviceProvisionedController.getCurrentUser()).thenReturn(TEST_USER + 1);
|
||||
|
||||
mUserSwitchTransitionViewMediator.handleUserLifecycleEvent(mUserLifecycleEvent);
|
||||
|
||||
verify(mUserSwitchTransitionViewController, never()).handleShow(TEST_USER);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onUserLifecycleEvent_userSwitching_callsHandleHide() {
|
||||
when(mUserLifecycleEvent.getEventType()).thenReturn(
|
||||
|
||||
Reference in New Issue
Block a user