diff --git a/server/src/main/java/com/ticketing/server/user/application/UserController.java b/server/src/main/java/com/ticketing/server/user/application/UserController.java index 42ff3d6..cb58cce 100644 --- a/server/src/main/java/com/ticketing/server/user/application/UserController.java +++ b/server/src/main/java/com/ticketing/server/user/application/UserController.java @@ -8,7 +8,6 @@ import com.ticketing.server.user.application.response.UserDeleteResponse; import com.ticketing.server.user.application.response.UserModifyPasswordResponse; import com.ticketing.server.user.domain.User; import com.ticketing.server.user.service.UserServiceImpl; -import java.util.Optional; import javax.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -50,14 +49,8 @@ public class UserController { return ResponseEntity.status(HttpStatus.BAD_REQUEST).build(); } - Optional user = userService.modifyPassword(request.toChangePassword(passwordEncoder)); - - if (user.isEmpty()) { - log.error("존재하지 않는 이메일 입니다. :: {}", request.getEmail()); - return ResponseEntity.status(HttpStatus.BAD_REQUEST).build(); - } - - return ResponseEntity.status(HttpStatus.OK).body(UserModifyPasswordResponse.of(user.get())); + User user = userService.modifyPassword(request.toChangePassword(passwordEncoder)); + return ResponseEntity.status(HttpStatus.OK).body(UserModifyPasswordResponse.of(user)); } } diff --git a/server/src/main/java/com/ticketing/server/user/service/UserServiceImpl.java b/server/src/main/java/com/ticketing/server/user/service/UserServiceImpl.java index 7fed280..64cd8b1 100644 --- a/server/src/main/java/com/ticketing/server/user/service/UserServiceImpl.java +++ b/server/src/main/java/com/ticketing/server/user/service/UserServiceImpl.java @@ -51,15 +51,15 @@ public class UserServiceImpl implements UserService { @Override @Transactional - public Optional modifyPassword(@Valid ChangePasswordDTO changePassword) { + public User modifyPassword(@Valid ChangePasswordDTO changePassword) { Optional optionalUser = userRepository.findByEmailAndIsDeletedFalse(changePassword.getEmail()); if (optionalUser.isEmpty()) { log.error("존재하지 않는 이메일 입니다. :: {}", changePassword); - return Optional.empty(); + throw new NotFoundEmailException(); } User user = optionalUser.get(); - return Optional.of(user.modifyPassword(changePassword)); + return user.modifyPassword(changePassword); } } diff --git a/server/src/main/java/com/ticketing/server/user/service/interfaces/UserService.java b/server/src/main/java/com/ticketing/server/user/service/interfaces/UserService.java index 6ab47b1..5d61418 100644 --- a/server/src/main/java/com/ticketing/server/user/service/interfaces/UserService.java +++ b/server/src/main/java/com/ticketing/server/user/service/interfaces/UserService.java @@ -4,7 +4,6 @@ import com.ticketing.server.user.domain.User; import com.ticketing.server.user.service.dto.ChangePasswordDTO; import com.ticketing.server.user.service.dto.DeleteUserDTO; import com.ticketing.server.user.service.dto.SignUpDTO; -import java.util.Optional; import javax.validation.Valid; public interface UserService { @@ -13,6 +12,6 @@ public interface UserService { User delete(@Valid DeleteUserDTO deleteUser); - Optional modifyPassword(@Valid ChangePasswordDTO changePassword); + User modifyPassword(@Valid ChangePasswordDTO changePassword); } diff --git a/server/src/test/java/com/ticketing/server/user/service/UserServiceImplTest.java b/server/src/test/java/com/ticketing/server/user/service/UserServiceImplTest.java index 67cd35c..c0932f7 100644 --- a/server/src/test/java/com/ticketing/server/user/service/UserServiceImplTest.java +++ b/server/src/test/java/com/ticketing/server/user/service/UserServiceImplTest.java @@ -102,10 +102,9 @@ class UserServiceImplTest { when(userRepository.findByEmailAndIsDeletedFalse("ticketing@gmail.com")).thenReturn(Optional.empty()); // when - Optional user = userService.modifyPassword(changePassword); - // then - assertThat(user).isEmpty(); + assertThatThrownBy(() -> userService.modifyPassword(changePassword)) + .isInstanceOf(NotFoundEmailException.class); } @Test @@ -115,10 +114,10 @@ class UserServiceImplTest { when(userRepository.findByEmailAndIsDeletedFalse("ticketing@gmail.com")).thenReturn(Optional.of(user)); // when - Optional user = userService.modifyPassword(changePassword); + User user = userService.modifyPassword(changePassword); // then - assertThat(user).isPresent(); + assertThat(user).isNotNull(); } }