diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java index 8b01cc1..567b916 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/entity/Admin.java @@ -2,12 +2,14 @@ package com.bpgroup.poc.admin.domain.base.admin.entity; import com.bpgroup.poc.admin.domain.base.BaseEntity; import jakarta.persistence.*; -import lombok.Builder; +import lombok.AccessLevel; import lombok.Getter; +import lombok.NoArgsConstructor; @Getter @Entity @Table(name = "admin") +@NoArgsConstructor(access = AccessLevel.PROTECTED) public class Admin extends BaseEntity { @Id @@ -29,15 +31,27 @@ public class Admin extends BaseEntity { @Embedded private AdminRole adminRole; - @Builder - public static Admin of(String loginId, String password, String email, String name, AdminRole adminRole) { - Admin admin = new Admin(); - admin.loginId = loginId; - admin.password = password; - admin.email = email; - admin.name = name; - admin.adminRole = adminRole; - return admin; + private Admin(String loginId, String password, String email, String name, AdminRole adminRole) { + this.loginId = loginId; + this.password = password; + this.email = email; + this.name = name; + this.adminRole = adminRole; + } + + private Admin(String password, String email, String name, AdminRole adminRole) { + this.password = password; + this.email = email; + this.name = name; + this.adminRole = adminRole; + } + + public static Admin createOf(String loginId, String password, String email, String name, AdminRole adminRole) { + return new Admin(loginId, password, email, name, adminRole); + } + + public static Admin updateOf(String password, String email, String name, AdminRole adminRole) { + return new Admin(password, email, name, adminRole); } public void update(Admin admin) { diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java index d43e53e..f78a5c0 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminCreateCommand.java @@ -4,7 +4,6 @@ import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; -import lombok.Builder; import lombok.Getter; import lombok.ToString; @@ -22,25 +21,20 @@ public class AdminCreateCommand { @NotNull private AdminRole adminRole; - @Builder + private AdminCreateCommand(String loginId, String password, String email, String name, AdminRole adminRole) { + this.loginId = loginId; + this.password = password; + this.email = email; + this.name = name; + this.adminRole = adminRole; + } + public static AdminCreateCommand of(String loginId, String password, String email, String name, AdminRole adminRole) { - AdminCreateCommand command = new AdminCreateCommand(); - command.loginId = loginId; - command.password = password; - command.email = email; - command.name = name; - command.adminRole = adminRole; - return command; + return new AdminCreateCommand(loginId, password, email, name, adminRole); } public Admin toEntity() { - return Admin.builder() - .loginId(loginId) - .password(password) - .email(email) - .name(name) - .adminRole(adminRole) - .build(); + return Admin.createOf(loginId, password, email, name, adminRole); } } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java index dde845f..cba0c8f 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminService.java @@ -9,8 +9,6 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; -import java.util.Optional; - @Service @RequiredArgsConstructor @Validated @@ -28,21 +26,11 @@ public class AdminService { public void update( @NotNull @Valid AdminUpdateCommand command ) { - Optional findAdmin = adminRepository.findById(command.getId()); - if (findAdmin.isEmpty()) { - throw new IllegalArgumentException("Not found admin"); - } - - Admin admin = findAdmin.get(); - admin.update(command.toEntity()); + Admin findAdmin = adminRepository.findById(command.getId()).orElseThrow(() -> new IllegalArgumentException("Not found admin")); + findAdmin.update(command.toEntity()); } public void delete(@NotNull Long id) { - Optional findAdmin = adminRepository.findById(id); - if (findAdmin.isEmpty()) { - throw new IllegalArgumentException("Not found admin"); - } - adminRepository.deleteById(id); } } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java index 0df5a4b..838cbe6 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminUpdateCommand.java @@ -4,7 +4,6 @@ import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; import jakarta.validation.constraints.NotBlank; import jakarta.validation.constraints.NotNull; -import lombok.Builder; import lombok.Getter; import lombok.ToString; @@ -22,24 +21,20 @@ public class AdminUpdateCommand { @NotNull private AdminRole adminRole; - @Builder + private AdminUpdateCommand(Long id, String password, String email, String name, AdminRole adminRole) { + this.id = id; + this.password = password; + this.email = email; + this.name = name; + this.adminRole = adminRole; + } + public static AdminUpdateCommand of(Long id, String password, String email, String name, AdminRole adminRole) { - AdminUpdateCommand command = new AdminUpdateCommand(); - command.id = id; - command.password = password; - command.email = email; - command.name = name; - command.adminRole = adminRole; - return command; + return new AdminUpdateCommand(id, password, email, name, adminRole); } public Admin toEntity() { - return Admin.builder() - .password(password) - .email(email) - .name(name) - .adminRole(adminRole) - .build(); + return Admin.updateOf(password, email, name, adminRole); } } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementAppService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementAppService.java new file mode 100644 index 0000000..ea2ebf8 --- /dev/null +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementAppService.java @@ -0,0 +1,65 @@ +package com.bpgroup.poc.admin.web.main.admin.management; + +import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; +import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; +import com.bpgroup.poc.admin.domain.base.admin.service.AdminCreateCommand; +import com.bpgroup.poc.admin.domain.base.admin.service.AdminService; +import com.bpgroup.poc.admin.domain.base.admin.service.AdminUpdateCommand; +import com.bpgroup.poc.admin.domain.base.role.entity.Role; +import com.bpgroup.poc.admin.domain.base.role.service.RoleService; +import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminCreate; +import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminDelete; +import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminUpdate; +import lombok.RequiredArgsConstructor; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +@Service +@RequiredArgsConstructor +@Transactional +public class AdminManagementAppService { + + private final PasswordEncoder passwordEncoder; + + private final AdminService adminService; + private final RoleService roleService; + + public AdminCreate.Response create(AdminCreate.Request request) { + Role findRole = roleService.find(request.getRoleId()).orElseThrow(() -> new IllegalArgumentException("Role Not Found")); + + Admin savedAdmin = adminService.create( + AdminCreateCommand.of( + request.getLoginId(), + passwordEncoder.encode(request.getPassword()), + request.getEmail(), + request.getName(), + AdminRole.of(findRole) + ) + ); + + return AdminCreate.Response.success(savedAdmin.getId()); + } + + public AdminUpdate.Response update(AdminUpdate.Request request) { + Role findRole = roleService.find(request.getRoleId()).orElseThrow(() -> new IllegalArgumentException("Role Not Found")); + + adminService.update( + AdminUpdateCommand.of( + request.getId(), + passwordEncoder.encode(request.getPassword()), + request.getEmail(), + request.getName(), + AdminRole.of(findRole) + ) + ); + + return AdminUpdate.Response.success(); + } + + public AdminDelete.Response delete(AdminDelete.Request request) { + adminService.delete(request.getId()); + return AdminDelete.Response.success(); + } + +} diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementRestController.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementRestController.java index c61aaaa..30dbfaa 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementRestController.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementRestController.java @@ -19,6 +19,7 @@ import java.util.List; public class AdminManagementRestController { private final AdminManagementWebService adminManagementWebService; + private final AdminManagementAppService adminManagementAppService; /** * 전체 조회 @@ -26,7 +27,7 @@ public class AdminManagementRestController { * @return 응답 */ @GetMapping("/list") - public ResponseEntity getAdmins() { + public ResponseEntity find() { List response = adminManagementWebService.findAll(); return ResponseEntity.ok(response); } @@ -38,7 +39,7 @@ public class AdminManagementRestController { * @return 응답 */ @GetMapping("/{loginId}") - public ResponseEntity getAdmin(@PathVariable @NotBlank String loginId) { + public ResponseEntity findAll(@PathVariable @NotBlank String loginId) { AdminFind.Response response = adminManagementWebService.find(loginId); return ResponseEntity.ok(response); } @@ -51,20 +52,20 @@ public class AdminManagementRestController { * @return 응답 */ @PostMapping("/create") - public ResponseEntity createAdmin( + public ResponseEntity create( @RequestBody @Validated AdminCreate.Request request, BindingResult bindingResult ) { - AdminCreate.Response response = adminManagementWebService.create(request); + AdminCreate.Response response = adminManagementAppService.create(request); return ResponseEntity.ok(response); } @PostMapping("/update") - public ResponseEntity updateAdmin( + public ResponseEntity update( @RequestBody @Validated AdminUpdate.Request request, BindingResult bindingResult ) { - AdminUpdate.Response response = adminManagementWebService.update(request); + AdminUpdate.Response response = adminManagementAppService.update(request); return ResponseEntity.ok(response); } @@ -72,11 +73,11 @@ public class AdminManagementRestController { * 관리자 삭제 */ @PostMapping("/delete") - public ResponseEntity deleteAdmin( + public ResponseEntity delete( @RequestBody @Validated AdminDelete.Request request, BindingResult bindingResult ) { - AdminDelete.Response response = adminManagementWebService.delete(request); + AdminDelete.Response response = adminManagementAppService.delete(request); return ResponseEntity.ok(response); } diff --git a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java index 356b1dc..97b4ed2 100644 --- a/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java +++ b/poc/admin/src/main/java/com/bpgroup/poc/admin/web/main/admin/management/AdminManagementWebService.java @@ -1,86 +1,22 @@ package com.bpgroup.poc.admin.web.main.admin.management; -import com.bpgroup.poc.admin.domain.base.admin.entity.Admin; -import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; -import com.bpgroup.poc.admin.domain.base.admin.service.AdminCreateCommand; -import com.bpgroup.poc.admin.domain.base.admin.service.AdminService; -import com.bpgroup.poc.admin.domain.base.admin.service.AdminUpdateCommand; -import com.bpgroup.poc.admin.domain.base.role.entity.Role; -import com.bpgroup.poc.admin.domain.base.role.service.RoleService; -import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminCreate; -import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminDelete; import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminFind; -import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminUpdate; import lombok.RequiredArgsConstructor; -import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import java.util.List; -import java.util.Optional; @Service @RequiredArgsConstructor -@Transactional public class AdminManagementWebService { - private final PasswordEncoder passwordEncoder; - - private final AdminService adminService; - private final RoleService roleService; - private final AdminManagementQueryRepository queryRepository; public List findAll() { return queryRepository.findAll(); } - public AdminFind.Response find(String loginId) { return queryRepository.findByLoginId(loginId); } - public AdminCreate.Response create(AdminCreate.Request request) { - Optional findRole = roleService.find(request.getRoleId()); - if (findRole.isEmpty()) { - throw new IllegalArgumentException("Role Not Found"); - } - Role role = findRole.get(); - - Admin savedAdmin = adminService.create( - AdminCreateCommand.builder() - .loginId(request.getLoginId()) - .password(passwordEncoder.encode(request.getPassword())) - .email(request.getEmail()) - .name(request.getName()) - .adminRole(AdminRole.of(role)) - .build() - ); - - return AdminCreate.Response.success(savedAdmin.getId()); - } - - public AdminUpdate.Response update(AdminUpdate.Request request) { - Optional findRole = roleService.find(request.getRoleId()); - if (findRole.isEmpty()) { - throw new IllegalArgumentException("Role Not Found"); - } - Role role = findRole.get(); - - adminService.update( - AdminUpdateCommand.builder() - .id(request.getId()) - .password(passwordEncoder.encode(request.getPassword())) - .email(request.getEmail()) - .name(request.getName()) - .adminRole(AdminRole.of(role)) - .build() - ); - - return AdminUpdate.Response.success(); - } - - public AdminDelete.Response delete(AdminDelete.Request request) { - adminService.delete(request.getId()); - return AdminDelete.Response.success(); - } } diff --git a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java index d10e6ed..35dc0ba 100644 --- a/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java +++ b/poc/admin/src/test/java/com/bpgroup/poc/admin/domain/base/admin/service/AdminServiceTest.java @@ -19,7 +19,7 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; @Transactional @DisplayName("AdminService 테스트") - class AdminServiceTest extends MariaDBTestEnv { +class AdminServiceTest extends MariaDBTestEnv { @Autowired private AdminService service; @@ -38,19 +38,19 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; } @Test - void createAdminTest() { + void createAdminTest() { Role role = getSaveRole(); flushAndClear(); // when Admin savedAdmin = service.create( - AdminCreateCommand.builder() - .loginId("test") - .password("test") - .email("test") - .name("test") - .adminRole(AdminRole.of(role)) - .build() + AdminCreateCommand.of( + "test", + "test", + "test", + "test", + AdminRole.of(role) + ) ); flushAndClear(); @@ -63,7 +63,7 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; @DisplayName("Admin 수정 테스트") @Test - void updateAdminTest() { + void updateAdminTest() { // given Role saveRole = getSaveRole(); flushAndClear(); @@ -81,13 +81,13 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; // when service.update( - AdminUpdateCommand.builder() - .id(saveAdmin.getId()) - .password("test2") - .email("test2") - .name("test2") - .adminRole(AdminRole.of(updateRole)) - .build() + AdminUpdateCommand.of( + saveAdmin.getId(), + "test2", + "test2", + "test2", + AdminRole.of(updateRole) + ) ); flushAndClear(); @@ -102,7 +102,7 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; @DisplayName("Admin 삭제 테스트") @Test - void deleteAdminTest() { + void deleteAdminTest() { // given Role saveRole = getSaveRole(); flushAndClear(); @@ -117,10 +117,10 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; // then assertThat(adminRepository.findById(saveAdmin.getId())).isEmpty(); } - + @DisplayName("Admin 삭제 시 Admin 동시 삭제 테스트") @Test - void deleteAdminAndAdminRoleTest() { + void deleteAdminAndAdminRoleTest() { // given Role saveRole = getSaveRole(); flushAndClear(); @@ -149,13 +149,13 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; @NotNull private Admin createAdmin(Role role) { return adminRepository.save( - Admin.builder() - .loginId("test") - .password("test") - .email("test") - .name("test") - .adminRole(AdminRole.of(role)) - .build() + Admin.createOf( + "test", + "test", + "test", + "test", + AdminRole.of(role) + ) ); } @@ -163,25 +163,24 @@ import static org.assertj.core.api.Assertions.assertThatThrownBy; @DisplayName("AdminService method 호출 유효성 검사 테스트") void validationTest() { // create - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId(null).password("password").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("").password("password").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password(null).email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email(null).name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name(null).adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name("").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.create(AdminCreateCommand.builder().loginId("loginId").password("password").email("email").name("name").adminRole(null).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of(null, "password", "email", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("", "password", "email", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("loginId", null, "email", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("loginId", "", "email", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("loginId", "password", null, "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("loginId", "password", "", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("loginId", "password", "email", null, AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("loginId", "password", "email", "", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.create(AdminCreateCommand.of("loginId", "password", "email", "name", null))).isInstanceOf(ConstraintViolationException.class); // update - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(null).password("password").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password(null).email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("").email("email").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email(null).name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("").name("name").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name(null).adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name("").adminRole(AdminRole.of(new Role())).build())).isInstanceOf(ConstraintViolationException.class); - assertThatThrownBy(() -> service.update(AdminUpdateCommand.builder().id(1L).password("password").email("email").name("name").adminRole(null).build())).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.of(null, "password", "email", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.of(1L, "", "email", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.of(1L, "password", null, "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.of(1L, "password", "", "name", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.of(1L, "password", "email", null, AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.of(1L, "password", "email", "", AdminRole.of(new Role())))).isInstanceOf(ConstraintViolationException.class); + assertThatThrownBy(() -> service.update(AdminUpdateCommand.of(1L, "password", "email", "name", null))).isInstanceOf(ConstraintViolationException.class); // delete assertThatThrownBy(() -> service.delete(null)).isInstanceOf(ConstraintViolationException.class); diff --git a/poc/admin/src/test/java/com/bpgroup/poc/admin/web/main/admin/AdminManagementWebServiceTest.java b/poc/admin/src/test/java/com/bpgroup/poc/admin/web/main/admin/AdminManagementAppServiceTest.java similarity index 77% rename from poc/admin/src/test/java/com/bpgroup/poc/admin/web/main/admin/AdminManagementWebServiceTest.java rename to poc/admin/src/test/java/com/bpgroup/poc/admin/web/main/admin/AdminManagementAppServiceTest.java index b6e741b..b3799bd 100644 --- a/poc/admin/src/test/java/com/bpgroup/poc/admin/web/main/admin/AdminManagementWebServiceTest.java +++ b/poc/admin/src/test/java/com/bpgroup/poc/admin/web/main/admin/AdminManagementAppServiceTest.java @@ -6,7 +6,7 @@ import com.bpgroup.poc.admin.domain.base.admin.entity.AdminRole; import com.bpgroup.poc.admin.domain.base.role.entity.Role; import com.bpgroup.poc.admin.domain.base.role.entity.RoleRepository; import com.bpgroup.poc.admin.env.MariaDBTestEnv; -import com.bpgroup.poc.admin.web.main.admin.management.AdminManagementWebService; +import com.bpgroup.poc.admin.web.main.admin.management.AdminManagementAppService; import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminCreate; import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminDelete; import com.bpgroup.poc.admin.web.main.admin.management.reqres.AdminUpdate; @@ -19,10 +19,10 @@ import static org.assertj.core.api.Assertions.assertThat; @DisplayName("Admin Web Service 테스트") @Transactional -class AdminManagementWebServiceTest extends MariaDBTestEnv { +class AdminManagementAppServiceTest extends MariaDBTestEnv { @Autowired - private AdminManagementWebService adminWebService; + private AdminManagementAppService adminAppService; @Autowired private AdminRepository adminRepository; @@ -45,7 +45,7 @@ class AdminManagementWebServiceTest extends MariaDBTestEnv { request.setRoleId(savedRole.getId()); // when - AdminCreate.Response response = adminWebService.create(request); + AdminCreate.Response response = adminAppService.create(request); // then assertThat(response.getResultCode()).isEqualTo("0000"); @@ -57,13 +57,13 @@ class AdminManagementWebServiceTest extends MariaDBTestEnv { // given Role savedRole = getSavedRole(); Admin savedAdmin = adminRepository.save( - Admin.builder() - .loginId("test") - .password("test") - .name("test") - .email("test") - .adminRole(AdminRole.of(savedRole)) - .build() + Admin.createOf( + "test", + "test", + "test", + "test", + AdminRole.of(savedRole) + ) ); flushAndClear(); @@ -75,7 +75,7 @@ class AdminManagementWebServiceTest extends MariaDBTestEnv { request.setRoleId(savedRole.getId()); // when - AdminUpdate.Response updateResponse = adminWebService.update(request); + AdminUpdate.Response updateResponse = adminAppService.update(request); // then assertThat(updateResponse.getResultCode()).isEqualTo("0000"); @@ -87,13 +87,14 @@ class AdminManagementWebServiceTest extends MariaDBTestEnv { // given Role savedRole = getSavedRole(); Admin savedAdmin = adminRepository.save( - Admin.builder() - .loginId("test") - .password("test") - .name("test") - .email("test") - .adminRole(AdminRole.of(savedRole)) - .build() + Admin.createOf( + "test", + "test", + "test", + "test", + AdminRole.of(savedRole) + ) + ); flushAndClear(); @@ -101,7 +102,7 @@ class AdminManagementWebServiceTest extends MariaDBTestEnv { request.setId(savedAdmin.getId()); // when - AdminDelete.Response response = adminWebService.delete(request); + AdminDelete.Response response = adminAppService.delete(request); // then assertThat(response.getResultCode()).isEqualTo("0000");