Merge "Replace SystemUser checks with MainUser."
This commit is contained in:
committed by
Android (Google) Code Review
commit
71fd373fd0
@@ -46,6 +46,7 @@ import android.net.LinkProperties;
|
||||
import android.net.Network;
|
||||
import android.net.wifi.WifiManager;
|
||||
import android.os.Bundle;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.os.storage.DiskInfo;
|
||||
import android.os.storage.StorageManager;
|
||||
@@ -299,4 +300,43 @@ public class UtilsTest {
|
||||
|
||||
assertThat(Utils.isSettingsIntelligence(mContext)).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void canCurrentUserDream_isMainUser_returnTrue() {
|
||||
Context mockContext = mock(Context.class);
|
||||
UserManager mockUserManager = mock(UserManager.class);
|
||||
|
||||
when(mockContext.getSystemService(UserManager.class)).thenReturn(mockUserManager);
|
||||
|
||||
// mock MainUser
|
||||
UserHandle mainUser = new UserHandle(10);
|
||||
when(mockUserManager.getMainUser()).thenReturn(mainUser);
|
||||
when(mockUserManager.isUserForeground()).thenReturn(true);
|
||||
|
||||
when(mockContext.createContextAsUser(mainUser, 0)).thenReturn(mockContext);
|
||||
|
||||
assertThat(Utils.canCurrentUserDream(mockContext)).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void canCurrentUserDream_nullMainUser_returnFalse() {
|
||||
Context mockContext = mock(Context.class);
|
||||
UserManager mockUserManager = mock(UserManager.class);
|
||||
|
||||
when(mockContext.getSystemService(UserManager.class)).thenReturn(mockUserManager);
|
||||
when(mockUserManager.getMainUser()).thenReturn(null);
|
||||
|
||||
assertThat(Utils.canCurrentUserDream(mockContext)).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void canCurrentUserDream_notMainUser_returnFalse() {
|
||||
Context mockContext = mock(Context.class);
|
||||
UserManager mockUserManager = mock(UserManager.class);
|
||||
|
||||
when(mockContext.getSystemService(UserManager.class)).thenReturn(mockUserManager);
|
||||
when(mockUserManager.isUserForeground()).thenReturn(false);
|
||||
|
||||
assertThat(Utils.canCurrentUserDream(mockContext)).isFalse();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,6 +32,7 @@ import android.provider.Settings;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settings.fuelgauge.BatteryBackupHelperTest.ShadowUserHandle;
|
||||
import com.android.settings.testutils.shadow.ShadowSecureSettings;
|
||||
@@ -106,15 +107,17 @@ public class TimeoutToDockUserPreferenceControllerTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvailabilityStatus_isCurrentlyUserZero_returnDisabledForUser() {
|
||||
ShadowUserHandle.setUid(UserHandle.USER_SYSTEM);
|
||||
public void getAvailabilityStatus_isCurrentlyMainUser_returnDisabledForUser() {
|
||||
when(Utils.canCurrentUserDream(mContext)).thenReturn(true);
|
||||
|
||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
||||
BasePreferenceController.DISABLED_FOR_USER);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvailabilityStatus_featureAndMultiUserEnabledAndNonUserZero_returnAvailable() {
|
||||
public void getAvailabilityStatus_featureAndMultiUserEnabledAndNonMainUser_returnAvailable() {
|
||||
when(Utils.canCurrentUserDream(mContext)).thenReturn(false);
|
||||
|
||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
||||
BasePreferenceController.AVAILABLE);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user