@Test public void update_only_scm_accounts() throws Exception { Map<String, Object> params = newHashMap(); params.put("login", "john"); params.put("scm_accounts", newArrayList("jn")); service.update(params); ArgumentCaptor<UpdateUser> userCaptor = ArgumentCaptor.forClass(UpdateUser.class); verify(userService).update(userCaptor.capture()); assertThat(userCaptor.getValue().isNameChanged()).isFalse(); assertThat(userCaptor.getValue().isEmailChanged()).isFalse(); assertThat(userCaptor.getValue().isScmAccountsChanged()).isTrue(); assertThat(userCaptor.getValue().isPasswordChanged()).isFalse(); }
@Test public void update() throws Exception { Map<String, Object> params = newHashMap(); params.put("login", "john"); params.put("name", "John"); params.put("email", "*****@*****.**"); params.put("scm_accounts", newArrayList("jn")); params.put("password", "1234"); params.put("password_confirmation", "1234"); service.update(params); ArgumentCaptor<UpdateUser> userCaptor = ArgumentCaptor.forClass(UpdateUser.class); verify(userService).update(userCaptor.capture()); assertThat(userCaptor.getValue().login()).isEqualTo("john"); assertThat(userCaptor.getValue().name()).isEqualTo("John"); assertThat(userCaptor.getValue().email()).isEqualTo("*****@*****.**"); assertThat(userCaptor.getValue().scmAccounts()).containsOnly("jn"); assertThat(userCaptor.getValue().password()).isEqualTo("1234"); assertThat(userCaptor.getValue().passwordConfirmation()).isEqualTo("1234"); }