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

Commit dc186fa6 authored by Tetiana Meronyk's avatar Tetiana Meronyk Committed by Android (Google) Code Review
Browse files

Merge "Add restriction to prevent user from being made an admin"

parents 5178fb36 1f824d5c
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -307,8 +307,9 @@ public class UserDetailsSettings extends SettingsPreferenceFragment
            mSwitchUserPref.setSelectable(true);
            mSwitchUserPref.setOnPreferenceClickListener(this);
        }
        //TODO(b/261700461): remove preference for supervised user
        if (mUserInfo.isMain() || mUserInfo.isGuest() || !UserManager.isMultipleAdminEnabled()) {
        if (mUserInfo.isMain() || mUserInfo.isGuest() || !UserManager.isMultipleAdminEnabled()
                || mUserManager.hasUserRestrictionForUser(UserManager.DISALLOW_GRANT_ADMIN,
                mUserInfo.getUserHandle())) {
            removePreference(KEY_GRANT_ADMIN);
        }
        if (!mUserManager.isAdminUser()) { // non admin users can't remove users and allow calls
+10 −0
Original line number Diff line number Diff line
@@ -699,6 +699,16 @@ public class UserDetailsSettingsTest {
        verify(mFragment).removePreference(KEY_GRANT_ADMIN);
    }

    @Test
    public void initialize_restrictUserSelected_shouldNotShowGrantAdminPref_MultipleAdminEnabled() {
        setupSelectedUser();
        ShadowUserManager.setIsMultipleAdminEnabled(true);
        mUserManager.setUserRestriction(mUserInfo.getUserHandle(),
                UserManager.DISALLOW_GRANT_ADMIN, true);
        mFragment.initialize(mActivity, mArguments);
        verify(mFragment).removePreference(KEY_GRANT_ADMIN);
    }

    @Test
    public void initialize_mainUserSelected_shouldShowGrantAdminPref_MultipleAdminEnabled() {
        setupSelectedMainUser();