@Override default User getUser(String identifier) { return get(identifier); } }
@Override public List<String> getAllUsers() { try { final List<User> users = userManagerService.search(new SearchRequestImpl("", 1, Integer.MAX_VALUE)).getResults(); return users.stream().map(User::getIdentifier).collect(Collectors.toList()); } catch (NoImplementationAvailableException e) { return Collections.singletonList("admin"); } }
/** * Loads the user management provider's settings into cache. * @param callback Load finished callback. */ private void loadUserSettings(final Command callback, final ErrorCallback<Message> errorCallback) { if (null == userManagerSettings) { usersManagerService.call(new RemoteCallback<UserManagerSettings>() { @Override public void callback(final UserManagerSettings userManagerSettings) { ClientUserSystemManager.this.userManagerSettings = userManagerSettings; if (null != callback) { callback.execute(); } } }, errorCallback).getSettings(); } else { callback.execute(); } }
@Test public void testOnDeleteUserEvent() { final OnDeleteEvent onDeleteEvent = mock(OnDeleteEvent.class); when(onDeleteEvent.getContext()).thenReturn(userEditor); tested.user = user; doAnswer(new Answer<Void>() { @Override public Void answer(InvocationOnMock invocationOnMock) throws Throwable { final Command callback = (Command) invocationOnMock.getArguments()[2]; callback.execute(); return null; } }).when(confirmBox).show(anyString(), anyString(), any(), any()); tested.onDeleteUserEvent(onDeleteEvent); verify(confirmBox, times(1)).show(anyString(), anyString(), any(), any()); verify(userManagerService, times(1)).delete(anyString()); }
@Test public void testDoSaveWithoutGroupAssignment() { when(userEditorDriver.flush()).thenReturn(true); when(userEditorDriver.getValue()).thenReturn(user); when(userEditor.getValue()).thenReturn(user); when(userEditor.canAssignGroups()).thenReturn(false); when(userEditor.canAssignRoles()).thenReturn(false); tested.user = user; tested.doSave(); verify(userManagerService, times(1)).update(any(User.class)); verify(loadingBox, times(2)).show(); verify(loadingBox, times(2)).hide(); }
@Test public void testUpdatePassword() throws Exception { final String newPassw = "new-password"; Command callback = mock(Command.class); ChangePassword.ChangePasswordCallback changePasswordCallback = mock(ChangePassword.ChangePasswordCallback.class); presenter.username = "user"; presenter.callback = changePasswordCallback; presenter.onUpdatePassword(newPassw, callback); verify(userManagerService, times(1)).changePassword(presenter.username, newPassw); verify(changePasswordEvent, times(1)).fire(any(ChangePasswordEvent.class)); verify(workbenchNotification, times(1)).fire(any(NotificationEvent.class)); verify(callback, times(1)).execute(); verify(changePasswordCallback, times(1)).onPasswordUpdated(); verify(view, times(1)).hide(); } }
/** * Loads the user management provider's settings into cache. * @param callback Load finished callback. */ private void loadUserSettings(final Command callback, final ErrorCallback<Message> errorCallback) { if (null == userManagerSettings) { usersManagerService.call(new RemoteCallback<UserManagerSettings>() { @Override public void callback(final UserManagerSettings userManagerSettings) { ClientUserSystemManager.this.userManagerSettings = userManagerSettings; if (null != callback) { callback.execute(); } } }, errorCallback).getSettings(); } else { callback.execute(); } }
@Test public void testOnDeleteUserEvent() { final OnDeleteEvent onDeleteEvent = mock(OnDeleteEvent.class); when(onDeleteEvent.getContext()).thenReturn(userEditor); tested.user = user; doAnswer(new Answer<Void>() { @Override public Void answer(InvocationOnMock invocationOnMock) throws Throwable { final Command callback = (Command) invocationOnMock.getArguments()[2]; callback.execute(); return null; } }).when(confirmBox).show(anyString(), anyString(), any(Command.class), any(Command.class)); tested.onDeleteUserEvent(onDeleteEvent); verify(confirmBox, times(1)).show(anyString(), anyString(), any(Command.class), any(Command.class)); verify(userManagerService, times(1)).delete(anyString()); }
@Test public void testOnSaveUserButNoContext() throws Exception { final SaveUserEvent saveUserEvent = mock(SaveUserEvent.class); presenter.context = null; presenter.onUserSaved(saveUserEvent); verify(userManagerService, never()).search(any(AbstractEntityManager.SearchRequest.class)); }
@Test public void testInitCache() { tested.initCache(); verify(userManagerService, times(1)).getSettings(); verify(groupsManagerService, times(1)).getSettings(); }
@Test public void testOnCreateEntityAlreadyExisting() { when(userManagerService.get(anyString())).thenReturn(user); when(createEntity.getEntityIdentifier()).thenReturn("user1"); tested.onCreateEntityClick(); verify(loadingBox, times(1)).show(); verify(loadingBox, times(1)).hide(); verify(createEntity, times(1)).setErrorState(); }
any()); verify(userManagerService, times(1)).delete(anyString()); verify(loadingBox, times(1)).show();
@Test public void testOnSaveUser() throws Exception { final SaveUserEvent saveUserEvent = mock(SaveUserEvent.class); presenter.context = mock(ExplorerViewContext.class); presenter.onUserSaved(saveUserEvent); verify(userManagerService, times(1)).search(any(AbstractEntityManager.SearchRequest.class)); }
@Test public void testInitCache() { tested.initCache(); verify(userManagerService, times(1)).getSettings(); verify(groupsManagerService, times(1)).getSettings(); }
tested.doShow(userId); verify(userManagerService, times(1)).get(anyString()); verify(view, times(1)).setCancelButtonVisible(true);
@Test public void testOnCreateUserButNoContext() throws Exception { final CreateUserEvent createUserEvent = mock(CreateUserEvent.class); presenter.context = null; presenter.onUserCreated(createUserEvent); verify(userManagerService, never()).search(any(AbstractEntityManager.SearchRequest.class)); }
@Before public void setup() { MockitoAnnotations.initMocks(this); final UserManagerSettings userManagerSettings = getUserSettings(); when(userManagerService.getSettings()).thenReturn(userManagerSettings); final GroupManagerSettings groupManagerSettings = getGroupSettings(); when(groupsManagerService.getSettings()).thenReturn(groupManagerSettings); usersManagerServiceCaller = new CallerMock<UserManagerService>(userManagerService); groupsManagerServiceCaller = new CallerMock<GroupManagerService>(groupsManagerService); rolesManagerServiceCaller = new CallerMock<RoleManagerService>(rolesManagerService); tested = spy(new ClientUserSystemManager(usersManagerServiceCaller, groupsManagerServiceCaller, rolesManagerServiceCaller, new ClientSecurityExceptionMessageResolver(), errorPopupPresenter)); }
assertFalse(tested.isDirty); verify(userManagerService, times(0)).get(anyString()); verify(view, times(3)).setCancelButtonVisible(true);
@Test public void testOnUserDeleted() throws Exception { final DeleteUserEvent deleteUserEvent = mock(DeleteUserEvent.class); presenter.context = mock(ExplorerViewContext.class); presenter.onUserDeleted(deleteUserEvent); verify(userManagerService, times(1)).search(any(AbstractEntityManager.SearchRequest.class)); }