use of com.ncedu.fooddelivery.api.v1.entities.Client in project 2021-msk-food-delivery by netcracker-edu.
the class ProfileControllerTest method getClientProfile.
@Test
public void getClientProfile() {
ClientInfoDTO clientInfoDTO = new ClientInfoDTO(1L, "CLIENT", "client@mail.ru");
when(clientServiceMock.getClientDTOById(1L)).thenReturn(clientInfoDTO);
User user = new User();
user.setId(1L);
user.setRole(Role.CLIENT);
UserInfoDTO resultClientDTO = profileController.getProfile(user);
assertEquals(clientInfoDTO, resultClientDTO);
}
use of com.ncedu.fooddelivery.api.v1.entities.Client in project 2021-msk-food-delivery by netcracker-edu.
the class ClientServiceTest method changeClientInfoSuccess.
@Test
public void changeClientInfoSuccess() {
Long userID = 1L;
Client client = ClientUtils.createPennyTeller(userID);
when(clientRepoMock.findById(userID)).thenReturn(Optional.of(client));
when(clientRepoMock.save(client)).thenReturn(null);
String newFullName = "Penny Hofstadter";
String newPhoneNumber = "+7 (800) 555 35-35";
UserChangeInfoDTO userChangeInfoDTO = new UserChangeInfoDTO(newFullName, newPhoneNumber);
boolean result = clientService.changeClientInfo(userID, userChangeInfoDTO);
verify(clientRepoMock, times(1)).findById(userID);
verify(clientRepoMock, times(1)).save(client);
assertEquals(newFullName, client.getUser().getFullName());
assertEquals(newPhoneNumber, client.getPhoneNumber());
assertTrue(result);
}
use of com.ncedu.fooddelivery.api.v1.entities.Client in project 2021-msk-food-delivery by netcracker-edu.
the class ClientUtils method createClient.
private static Client createClient(Long userId, String fullName, String email, String phoneNumber) {
User user = new User();
user.setId(userId);
user.setFullName(fullName);
user.setEmail(email);
user.setRole(Role.CLIENT);
Client client = new Client();
client.setPhoneNumber(phoneNumber);
client.setUser(user);
return client;
}
use of com.ncedu.fooddelivery.api.v1.entities.Client in project 2021-msk-food-delivery by netcracker-edu.
the class AuthServiceImpl method signUp.
@Override
public isCreatedDTO signUp(NewUserDTO userInfo) {
RegistrationMapper regMapper = RegistrationMapper.INSTANCE;
userInfo.setPassword(encoder.encode(userInfo.getPassword()));
User user = regMapper.dtoToUser(userInfo);
user.setRegDate(Timestamp.valueOf(LocalDateTime.now()));
if (Role.isCLIENT(userInfo.getRole())) {
Client client = regMapper.dtoToClient(userInfo);
user.setClient(client);
}
if (Role.isMODERATOR(userInfo.getRole())) {
Moderator moderator = regMapper.dtoToModerator(userInfo);
user.setModerator(moderator);
}
user = userRepo.save(user);
Long userId = user.getId();
return new isCreatedDTO(userId);
}
use of com.ncedu.fooddelivery.api.v1.entities.Client in project 2021-msk-food-delivery by netcracker-edu.
the class ClientServiceImpl method changeClientInfo.
@Override
public boolean changeClientInfo(Long id, UserChangeInfoDTO newUserInfo) {
Client client = getClientById(id);
String newFullName = newUserInfo.getFullName();
if (newFullName != null) {
User user = client.getUser();
user.setFullName(newFullName);
client.setUser(user);
}
String newPhoneNumber = newUserInfo.getPhoneNumber();
if (newPhoneNumber != null) {
Client clientWithNewNumber = clientRepo.findByPhoneNumber(newPhoneNumber);
if (clientWithNewNumber != null) {
throw new AlreadyExistsException(newPhoneNumber);
}
client.setPhoneNumber(newPhoneNumber);
}
clientRepo.save(client);
return true;
}
Aggregations