use of com.ncedu.fooddelivery.api.v1.dto.user.EmailChangeDTO in project 2021-msk-food-delivery by netcracker-edu.
the class UserServiceTest method changeEmailAlreadyExists.
@Test
public void changeEmailAlreadyExists() {
Long userId = 1L;
User penny = UserUtils.clientPennyTeller(userId);
Long anotherId = 2L;
User leonard = UserUtils.moderatorLeonardHofstadter(anotherId);
String newPennyEmail = leonard.getEmail();
when(userRepoMock.findByEmail(newPennyEmail)).thenReturn(leonard);
String password = "password";
EmailChangeDTO changeDTO = new EmailChangeDTO();
changeDTO.setEmail(newPennyEmail);
changeDTO.setPassword(password);
Exception exception = assertThrows(AlreadyExistsException.class, () -> {
userService.changeEmail(penny, changeDTO);
});
String resultMessage = exception.getMessage();
String perfectMessage = new AlreadyExistsException(newPennyEmail).getMessage();
assertEquals(perfectMessage, resultMessage);
verify(userRepoMock, times(1)).findByEmail(newPennyEmail);
verify(userRepoMock, never()).save(any(User.class));
}
Aggregations