Loading src/com/android/settings/users/UserSettings.java +1 −1 Original line number Diff line number Diff line Loading @@ -472,7 +472,7 @@ public class UserSettings extends SettingsPreferenceFragment @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { int pos = 0; if (!isCurrentUserAdmin() && (canSwitchUserNow() || Flags.newMultiuserSettingsUx()) if (!mUserCaps.mIsMain && (canSwitchUserNow() || Flags.newMultiuserSettingsUx()) && !isCurrentUserGuest() && !mUserManager.isProfile()) { String nickname = mUserManager.getUserName(); MenuItem removeThisUser = menu.add(0, MENU_REMOVE_USER, pos++, Loading tests/robotests/src/com/android/settings/users/UserSettingsTest.java +30 −0 Original line number Diff line number Diff line Loading @@ -365,6 +365,36 @@ public class UserSettingsTest { verify(menuItem).setTitle(AdditionalMatchers.not(eq(defaultTitle))); } @Test public void withCurrentUserAdmin_ShouldAddRemoveUserAction() { doReturn(SWITCHABILITY_STATUS_OK).when(mUserManager).getUserSwitchability(); mUserCapabilities.mIsMain = false; mUserCapabilities.mIsAdmin = true; Menu menu = mock(Menu.class); MenuItem menuItem = mock(MenuItem.class); final String title = "title"; doReturn(title).when(menuItem).getTitle(); doReturn(menuItem).when(menu).add( anyInt(), eq(Menu.FIRST), anyInt(), any(CharSequence.class)); mFragment.onCreateOptionsMenu(menu, mock(MenuInflater.class)); verify(menu).add(eq(0), anyInt(), anyInt(), any(CharSequence.class)); } @Test public void withCurrentUserMain_ShouldNotAddRemoveUserAction() { mUserCapabilities.mIsMain = true; doReturn(SWITCHABILITY_STATUS_OK).when(mUserManager).getUserSwitchability(); Menu menu = mock(Menu.class); mFragment.onCreateOptionsMenu(menu, mock(MenuInflater.class)); verify(menu, never()).add(anyInt(), anyInt(), anyInt(), any(CharSequence.class)); } @Test public void withoutDisallowRemoveUser_ShouldNotDisableRemoveUser() { // Arrange Loading Loading
src/com/android/settings/users/UserSettings.java +1 −1 Original line number Diff line number Diff line Loading @@ -472,7 +472,7 @@ public class UserSettings extends SettingsPreferenceFragment @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { int pos = 0; if (!isCurrentUserAdmin() && (canSwitchUserNow() || Flags.newMultiuserSettingsUx()) if (!mUserCaps.mIsMain && (canSwitchUserNow() || Flags.newMultiuserSettingsUx()) && !isCurrentUserGuest() && !mUserManager.isProfile()) { String nickname = mUserManager.getUserName(); MenuItem removeThisUser = menu.add(0, MENU_REMOVE_USER, pos++, Loading
tests/robotests/src/com/android/settings/users/UserSettingsTest.java +30 −0 Original line number Diff line number Diff line Loading @@ -365,6 +365,36 @@ public class UserSettingsTest { verify(menuItem).setTitle(AdditionalMatchers.not(eq(defaultTitle))); } @Test public void withCurrentUserAdmin_ShouldAddRemoveUserAction() { doReturn(SWITCHABILITY_STATUS_OK).when(mUserManager).getUserSwitchability(); mUserCapabilities.mIsMain = false; mUserCapabilities.mIsAdmin = true; Menu menu = mock(Menu.class); MenuItem menuItem = mock(MenuItem.class); final String title = "title"; doReturn(title).when(menuItem).getTitle(); doReturn(menuItem).when(menu).add( anyInt(), eq(Menu.FIRST), anyInt(), any(CharSequence.class)); mFragment.onCreateOptionsMenu(menu, mock(MenuInflater.class)); verify(menu).add(eq(0), anyInt(), anyInt(), any(CharSequence.class)); } @Test public void withCurrentUserMain_ShouldNotAddRemoveUserAction() { mUserCapabilities.mIsMain = true; doReturn(SWITCHABILITY_STATUS_OK).when(mUserManager).getUserSwitchability(); Menu menu = mock(Menu.class); mFragment.onCreateOptionsMenu(menu, mock(MenuInflater.class)); verify(menu, never()).add(anyInt(), anyInt(), anyInt(), any(CharSequence.class)); } @Test public void withoutDisallowRemoveUser_ShouldNotDisableRemoveUser() { // Arrange Loading