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

Commit b01d15aa authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Fix visibility of AddUser when toggling multiuser."

parents de3ff1ee 73d7773e
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -964,9 +964,10 @@ public class UserSettings extends SettingsPreferenceFragment
                mAddUserWhenLockedPreferenceController.getPreferenceKey());
        mAddUserWhenLockedPreferenceController.updateState(addUserOnLockScreen);
        mMultiUserFooterPreferenceController.updateState(null /* preference */);
        mAddUser.setVisible(mUserCaps.mCanAddUser && Utils.isDeviceProvisioned(context)
                && mUserCaps.mUserSwitcherEnabled);
        mUserListCategory.setVisible(mUserCaps.mUserSwitcherEnabled);
        if (!mUserCaps.mUserSwitcherEnabled) {
            mAddUser.setVisible(false);
            return;
        }

+27 −0
Original line number Diff line number Diff line
@@ -212,4 +212,31 @@ public class UserSettingsTest {

    }

    @Test
    public void updateUserList_canAddUserAndSwitchUser_shouldShowAddUser() {
        Settings.Global.putInt(mContext.getContentResolver(),
            Settings.Global.DEVICE_PROVISIONED, 1);
        final RestrictedPreference addUser = mock(RestrictedPreference.class);

        mUserCapabilities.mCanAddUser = true;
        mUserCapabilities.mDisallowAddUser = false;
        mUserCapabilities.mUserSwitcherEnabled = true;

        ReflectionHelpers.setField(mFragment, "mUserManager", mUserManager);
        ReflectionHelpers.setField(mFragment, "mUserCaps", mUserCapabilities);
        ReflectionHelpers.setField(mFragment, "mDefaultIconDrawable", mDefaultIconDrawable);
        ReflectionHelpers.setField(mFragment, "mAddingUser", false);
        mFragment.mMePreference = mMePreference;
        mFragment.mUserListCategory = mock(PreferenceCategory.class);
        mFragment.mAddUser = addUser;

        doReturn(mock(PreferenceScreen.class)).when(mFragment).getPreferenceScreen();
        doReturn("Test summary").when(mFragment).getString(anyInt(), anyInt());

        mFragment.updateUserList();

        verify(addUser).setVisible(true);

    }

}