Loading services/tests/mockingservicestests/src/com/android/server/pm/UserManagerServiceTest.java +74 −43 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ import static android.content.pm.PackageManager.FEATURE_AUTOMOTIVE; import static android.content.pm.PackageManager.FEATURE_EMBEDDED; import static android.content.pm.PackageManager.FEATURE_LEANBACK; import static android.content.pm.PackageManager.FEATURE_WATCH; import static android.multiuser.Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION; import static android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES; import static android.multiuser.Flags.FLAG_LOGOUT_USER_API; import static android.multiuser.Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE; import static android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE; import static android.os.UserManager.DISALLOW_OUTGOING_CALLS; import static android.os.UserManager.DISALLOW_SMS; import static android.os.UserManager.DISALLOW_USER_SWITCH; Loading Loading @@ -54,7 +59,6 @@ import android.content.Context; import android.content.pm.PackageManagerInternal; import android.content.pm.UserInfo; import android.content.res.Resources; import android.multiuser.Flags; import android.os.PowerManager; import android.os.ServiceSpecificException; import android.os.SystemProperties; Loading Loading @@ -613,9 +617,8 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) public void testAutoLockPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -634,10 +637,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testAutoLockOnDeviceLockForPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -657,10 +662,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testAutoLockOnDeviceLockForPrivateProfile_keyguardUnlocked() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); assumeTrue(mUms.canAddPrivateProfile(0)); UserManagerService mSpiedUms = spy(mUms); UserInfo privateProfileUser = Loading @@ -677,10 +684,9 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @DisableFlags(FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE) public void testAutoLockOnDeviceLockForPrivateProfile_flagDisabled() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.disableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -699,10 +705,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testAutoLockAfterInactityForPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -723,11 +731,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testSetOrUpdateAutoLockPreference_noPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); mUms.setOrUpdateAutoLockPreferenceForPrivateProfile( Settings.Secure.PRIVATE_SPACE_AUTO_LOCK_AFTER_INACTIVITY); Loading @@ -738,10 +747,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testSetOrUpdateAutoLockPreference() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); mUms.createProfileForUserEvenWhenDisallowedWithThrow(PRIVATE_PROFILE_NAME, Loading Loading @@ -792,10 +803,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, android.multiuser.Flags.FLAG_ENABLE_HIDING_PROFILES }) public void testGetProfileIdsExcludingHidden() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_HIDING_PROFILES); assumeTrue(mUms.canAddPrivateProfile(0)); UserInfo privateProfileUser = mUms.createProfileForUserEvenWhenDisallowedWithThrow("TestPrivateProfile", Loading @@ -806,8 +819,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnHeadlessSystemUser_shouldAllowCreation() { UserManagerService mSpiedUms = spy(mUms); assumeTrue(mUms.isHeadlessSystemUserMode()); Loading @@ -819,8 +835,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnSecondaryUser_shouldNotAllowCreation() { assumeTrue(mUms.canAddMoreUsersOfType(USER_TYPE_FULL_SECONDARY)); UserInfo user = mUms.createUserWithThrow(generateLongString(), USER_TYPE_FULL_SECONDARY, 0); Loading @@ -831,8 +850,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnAutoDevices_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_AUTOMOTIVE), anyInt()); int mainUser = mUms.getMainUserId(); Loading @@ -843,8 +865,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnTV_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_LEANBACK), anyInt()); int mainUser = mUms.getMainUserId(); Loading @@ -855,8 +880,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnEmbedded_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_EMBEDDED), anyInt()); int mainUser = mUms.getMainUserId(); Loading @@ -867,8 +895,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnWatch_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_WATCH), anyInt()); int mainUser = mUms.getMainUserId(); Loading Loading @@ -922,7 +953,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_HsumAndInteractiveHeadlessSystem_UserCanLogout() throws Exception { setSystemUserHeadless(true); Loading @@ -938,7 +969,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_HsumAndNonInteractiveHeadlessSystem_UserCannotLogout() throws Exception { setSystemUserHeadless(true); Loading @@ -953,7 +984,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_Hsum_SystemUserCannotLogout() throws Exception { setSystemUserHeadless(true); mockCurrentUser(UserHandle.USER_SYSTEM); Loading @@ -962,7 +993,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_NonHsum_SystemUserCannotLogout() throws Exception { setSystemUserHeadless(false); mockCurrentUser(UserHandle.USER_SYSTEM); Loading @@ -972,7 +1003,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_CannotSwitch_CannotLogout() throws Exception { setSystemUserHeadless(true); addUser(USER_ID); Loading @@ -985,7 +1016,7 @@ public final class UserManagerServiceTest { } @Test @DisableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @DisableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_LogoutDisabled() throws Exception { assertThrows(UnsupportedOperationException.class, () -> mUms.getUserLogoutability(USER_ID)); } Loading Loading
services/tests/mockingservicestests/src/com/android/server/pm/UserManagerServiceTest.java +74 −43 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ import static android.content.pm.PackageManager.FEATURE_AUTOMOTIVE; import static android.content.pm.PackageManager.FEATURE_EMBEDDED; import static android.content.pm.PackageManager.FEATURE_LEANBACK; import static android.content.pm.PackageManager.FEATURE_WATCH; import static android.multiuser.Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION; import static android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES; import static android.multiuser.Flags.FLAG_LOGOUT_USER_API; import static android.multiuser.Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE; import static android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE; import static android.os.UserManager.DISALLOW_OUTGOING_CALLS; import static android.os.UserManager.DISALLOW_SMS; import static android.os.UserManager.DISALLOW_USER_SWITCH; Loading Loading @@ -54,7 +59,6 @@ import android.content.Context; import android.content.pm.PackageManagerInternal; import android.content.pm.UserInfo; import android.content.res.Resources; import android.multiuser.Flags; import android.os.PowerManager; import android.os.ServiceSpecificException; import android.os.SystemProperties; Loading Loading @@ -613,9 +617,8 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) public void testAutoLockPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -634,10 +637,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testAutoLockOnDeviceLockForPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -657,10 +662,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testAutoLockOnDeviceLockForPrivateProfile_keyguardUnlocked() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); assumeTrue(mUms.canAddPrivateProfile(0)); UserManagerService mSpiedUms = spy(mUms); UserInfo privateProfileUser = Loading @@ -677,10 +684,9 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @DisableFlags(FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE) public void testAutoLockOnDeviceLockForPrivateProfile_flagDisabled() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.disableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -699,10 +705,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testAutoLockAfterInactityForPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); UserManagerService mSpiedUms = spy(mUms); Loading @@ -723,11 +731,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testSetOrUpdateAutoLockPreference_noPrivateProfile() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); mUms.setOrUpdateAutoLockPreferenceForPrivateProfile( Settings.Secure.PRIVATE_SPACE_AUTO_LOCK_AFTER_INACTIVITY); Loading @@ -738,10 +747,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE }) public void testSetOrUpdateAutoLockPreference() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_SUPPORT_AUTOLOCK_FOR_PRIVATE_SPACE); int mainUser = mUms.getMainUserId(); assumeTrue(mUms.canAddPrivateProfile(mainUser)); mUms.createProfileForUserEvenWhenDisallowedWithThrow(PRIVATE_PROFILE_NAME, Loading Loading @@ -792,10 +803,12 @@ public final class UserManagerServiceTest { } @Test @EnableFlags({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_ENABLE_PRIVATE_SPACE_FEATURES, android.multiuser.Flags.FLAG_ENABLE_HIDING_PROFILES }) public void testGetProfileIdsExcludingHidden() { mSetFlagsRule.enableFlags(android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, android.multiuser.Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES); mSetFlagsRule.enableFlags(Flags.FLAG_ENABLE_HIDING_PROFILES); assumeTrue(mUms.canAddPrivateProfile(0)); UserInfo privateProfileUser = mUms.createProfileForUserEvenWhenDisallowedWithThrow("TestPrivateProfile", Loading @@ -806,8 +819,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnHeadlessSystemUser_shouldAllowCreation() { UserManagerService mSpiedUms = spy(mUms); assumeTrue(mUms.isHeadlessSystemUserMode()); Loading @@ -819,8 +835,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnSecondaryUser_shouldNotAllowCreation() { assumeTrue(mUms.canAddMoreUsersOfType(USER_TYPE_FULL_SECONDARY)); UserInfo user = mUms.createUserWithThrow(generateLongString(), USER_TYPE_FULL_SECONDARY, 0); Loading @@ -831,8 +850,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnAutoDevices_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_AUTOMOTIVE), anyInt()); int mainUser = mUms.getMainUserId(); Loading @@ -843,8 +865,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnTV_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_LEANBACK), anyInt()); int mainUser = mUms.getMainUserId(); Loading @@ -855,8 +880,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnEmbedded_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_EMBEDDED), anyInt()); int mainUser = mUms.getMainUserId(); Loading @@ -867,8 +895,11 @@ public final class UserManagerServiceTest { } @Test @RequiresFlagsEnabled({android.os.Flags.FLAG_ALLOW_PRIVATE_PROFILE, Flags.FLAG_BLOCK_PRIVATE_SPACE_CREATION, Flags.FLAG_ENABLE_PRIVATE_SPACE_FEATURES}) @RequiresFlagsEnabled({ FLAG_ALLOW_PRIVATE_PROFILE, FLAG_BLOCK_PRIVATE_SPACE_CREATION, FLAG_ENABLE_PRIVATE_SPACE_FEATURES }) public void testCreatePrivateProfileOnWatch_shouldNotAllowCreation() { doReturn(true).when(mMockPms).hasSystemFeature(eq(FEATURE_WATCH), anyInt()); int mainUser = mUms.getMainUserId(); Loading Loading @@ -922,7 +953,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_HsumAndInteractiveHeadlessSystem_UserCanLogout() throws Exception { setSystemUserHeadless(true); Loading @@ -938,7 +969,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_HsumAndNonInteractiveHeadlessSystem_UserCannotLogout() throws Exception { setSystemUserHeadless(true); Loading @@ -953,7 +984,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_Hsum_SystemUserCannotLogout() throws Exception { setSystemUserHeadless(true); mockCurrentUser(UserHandle.USER_SYSTEM); Loading @@ -962,7 +993,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_NonHsum_SystemUserCannotLogout() throws Exception { setSystemUserHeadless(false); mockCurrentUser(UserHandle.USER_SYSTEM); Loading @@ -972,7 +1003,7 @@ public final class UserManagerServiceTest { } @Test @EnableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @EnableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_CannotSwitch_CannotLogout() throws Exception { setSystemUserHeadless(true); addUser(USER_ID); Loading @@ -985,7 +1016,7 @@ public final class UserManagerServiceTest { } @Test @DisableFlags(android.multiuser.Flags.FLAG_LOGOUT_USER_API) @DisableFlags(FLAG_LOGOUT_USER_API) public void testGetUserLogoutability_LogoutDisabled() throws Exception { assertThrows(UnsupportedOperationException.class, () -> mUms.getUserLogoutability(USER_ID)); } Loading