diff --git a/src/main/java/com/delfood/dto/OwnerDTO.java b/src/main/java/com/delfood/dto/OwnerDTO.java index b6d4837..93a4e88 100644 --- a/src/main/java/com/delfood/dto/OwnerDTO.java +++ b/src/main/java/com/delfood/dto/OwnerDTO.java @@ -1,7 +1,7 @@ package com.delfood.dto; import java.time.LocalDateTime; - +import lombok.Builder; import lombok.Getter; import lombok.NonNull; import lombok.Setter; @@ -9,6 +9,7 @@ import org.apache.ibatis.type.Alias; +@Builder @Getter @Setter @ToString diff --git a/src/test/java/com/delfood/service/OwnerServiceTest.java b/src/test/java/com/delfood/service/OwnerServiceTest.java new file mode 100644 index 0000000..33483bc --- /dev/null +++ b/src/test/java/com/delfood/service/OwnerServiceTest.java @@ -0,0 +1,63 @@ +package com.delfood.service; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.Assert.assertThat; +import static org.mockito.BDDMockito.given; +import static org.mockito.Mockito.times; +import static org.mockito.Mockito.verify; +import static org.mockito.Mockito.when; + +import com.delfood.dto.OwnerDTO; +import com.delfood.mapper.OwnerMapper; +import com.delfood.utils.SHA256Util; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.junit.MockitoJUnitRunner; + + +@RunWith(MockitoJUnitRunner.class) +public class OwnerServiceTest { + + @InjectMocks // 의존성 주입이 필요한 mock에 설정, @Mock으로 등록된 객체를 주입시켜준다. + OwnerService service; + + @Mock // mock 생성 + OwnerMapper mapper; + + /** + * 회원가입 성공 테스트. + */ + @Test + public void signUp_success() { + OwnerDTO ownerInfo = OwnerDTO.builder() + .id("ljy2134") + .password(SHA256Util.encryptSHA256("2134")) + .name("이진영") + .mail("asdf@naver.com") + .tel("010-3333-3333") + .build(); + + given(mapper.insertOwner(ownerInfo)).willReturn(1); + service.signUp(ownerInfo); + } + + /** + * 회원가입 실패 테스트. + */ + @Test(expected = RuntimeException.class) + public void signUp_fail() { + OwnerDTO ownerInfo = OwnerDTO.builder() + .id("ljy2134") + .password(SHA256Util.encryptSHA256("2134")) + .name("이진영") + .mail("asdf@naver.com") + .tel("010-3333-3333") + .build(); + + given(mapper.insertOwner(ownerInfo)).willReturn(0); + service.signUp(ownerInfo); + } + +}