diff --git a/src/main/java/myblog/blog/article/application/port/incomming/request/ArticleCreateCommand.java b/src/main/java/myblog/blog/article/application/port/incomming/request/ArticleCreateCommand.java index 27ad14d..ffa5002 100644 --- a/src/main/java/myblog/blog/article/application/port/incomming/request/ArticleCreateCommand.java +++ b/src/main/java/myblog/blog/article/application/port/incomming/request/ArticleCreateCommand.java @@ -2,6 +2,7 @@ package myblog.blog.article.application.port.incomming.request; import lombok.AllArgsConstructor; import lombok.Getter; +import lombok.NoArgsConstructor; import myblog.blog.article.adapter.incomming.ArticleForm; @Getter diff --git a/src/main/java/myblog/blog/article/domain/Article.java b/src/main/java/myblog/blog/article/domain/Article.java index 7a7c7e3..44851c5 100644 --- a/src/main/java/myblog/blog/article/domain/Article.java +++ b/src/main/java/myblog/blog/article/domain/Article.java @@ -10,6 +10,7 @@ import lombok.Getter; import org.hibernate.annotations.OnDelete; import org.hibernate.annotations.OnDeleteAction; import javax.persistence.*; +import javax.validation.constraints.NotNull; import java.util.*; /* diff --git a/src/main/java/myblog/blog/infra/config/SecurityConfig.java b/src/main/java/myblog/blog/infra/config/SecurityConfig.java index e060b8d..c13fa4a 100644 --- a/src/main/java/myblog/blog/infra/config/SecurityConfig.java +++ b/src/main/java/myblog/blog/infra/config/SecurityConfig.java @@ -1,7 +1,7 @@ package myblog.blog.infra.config; import lombok.RequiredArgsConstructor; -import myblog.blog.infra.exception.LoginFailHandler; +import myblog.blog.shared.exception.LoginFailHandler; import myblog.blog.member.doamin.Role; import myblog.blog.member.application.Oauth2MemberService; import org.springframework.boot.autoconfigure.security.servlet.PathRequest; diff --git a/src/main/java/myblog/blog/infra/exception/ExceptionController.java b/src/main/java/myblog/blog/shared/exception/ExceptionController.java similarity index 94% rename from src/main/java/myblog/blog/infra/exception/ExceptionController.java rename to src/main/java/myblog/blog/shared/exception/ExceptionController.java index abd7845..0810fed 100644 --- a/src/main/java/myblog/blog/infra/exception/ExceptionController.java +++ b/src/main/java/myblog/blog/shared/exception/ExceptionController.java @@ -1,4 +1,4 @@ -package myblog.blog.infra.exception; +package myblog.blog.shared.exception; import myblog.blog.shared.application.port.incomming.LayoutRenderingUseCase; diff --git a/src/main/java/myblog/blog/infra/exception/ExceptionRestControllerAdvice.java b/src/main/java/myblog/blog/shared/exception/ExceptionRestControllerAdvice.java similarity index 94% rename from src/main/java/myblog/blog/infra/exception/ExceptionRestControllerAdvice.java rename to src/main/java/myblog/blog/shared/exception/ExceptionRestControllerAdvice.java index bdf9fc2..6e5a80b 100644 --- a/src/main/java/myblog/blog/infra/exception/ExceptionRestControllerAdvice.java +++ b/src/main/java/myblog/blog/shared/exception/ExceptionRestControllerAdvice.java @@ -1,4 +1,4 @@ -package myblog.blog.infra.exception; +package myblog.blog.shared.exception; import myblog.blog.comment.adapter.incomming.CommentBadRequestException; import org.springframework.http.HttpStatus; diff --git a/src/main/java/myblog/blog/infra/exception/LoginFailHandler.java b/src/main/java/myblog/blog/shared/exception/LoginFailHandler.java similarity index 97% rename from src/main/java/myblog/blog/infra/exception/LoginFailHandler.java rename to src/main/java/myblog/blog/shared/exception/LoginFailHandler.java index 13949a5..cedebcb 100644 --- a/src/main/java/myblog/blog/infra/exception/LoginFailHandler.java +++ b/src/main/java/myblog/blog/shared/exception/LoginFailHandler.java @@ -1,4 +1,4 @@ -package myblog.blog.infra.exception; +package myblog.blog.shared.exception; import lombok.extern.slf4j.Slf4j; import org.springframework.security.authentication.AuthenticationServiceException; diff --git a/src/test/kotlin/ArticleServiceTests.kt b/src/test/kotlin/ArticleServiceTests.kt new file mode 100644 index 0000000..b47dcd8 --- /dev/null +++ b/src/test/kotlin/ArticleServiceTests.kt @@ -0,0 +1,29 @@ +package myblog.blog.article.application + +import myblog.blog.article.application.port.incomming.TagUseCase +import myblog.blog.article.application.port.outgoing.ArticleBackupRepositoryPort +import myblog.blog.article.application.port.outgoing.ArticleRepositoryPort +import myblog.blog.article.domain.Article +import myblog.blog.category.appliacation.port.incomming.CategoryUseCase +import myblog.blog.member.application.port.incomming.MemberQueriesUseCase +import org.junit.jupiter.api.Test +import org.junit.jupiter.api.extension.ExtendWith +import org.mockito.InjectMocks +import org.mockito.Mock +import org.mockito.junit.jupiter.MockitoExtension + +@ExtendWith(MockitoExtension::class) +class ArticleServiceTests { + @Mock lateinit var tagUseCase: TagUseCase + @Mock lateinit var categoryUseCase: CategoryUseCase + @Mock lateinit var memberQueriesUseCase: MemberQueriesUseCase + @Mock lateinit var articleRepositoryPort: ArticleRepositoryPort + @Mock lateinit var articleBackupRepositoryPort: ArticleBackupRepositoryPort + @InjectMocks lateinit var articleService: ArticleService + + @Test + fun`제목이 없는 article 엔티티 초기화 불가`(){ + Article.builder().build() + } + +} \ No newline at end of file diff --git a/src/test/kotlin/myblog/blog/article/application/ArticleServiceTests.kt b/src/test/kotlin/myblog/blog/article/application/ArticleServiceTests.kt deleted file mode 100644 index 8c0dd0c..0000000 --- a/src/test/kotlin/myblog/blog/article/application/ArticleServiceTests.kt +++ /dev/null @@ -1,26 +0,0 @@ -//package myblog.blog.article.application -// -//import myblog.blog.article.application.port.incomming.TagUseCase -//import myblog.blog.article.application.port.outgoing.ArticleBackupRepositoryPort -//import myblog.blog.article.application.port.outgoing.ArticleRepositoryPort -//import myblog.blog.category.appliacation.port.incomming.CategoryUseCase -//import myblog.blog.member.application.port.incomming.MemberQueriesUseCase -//import org.junit.jupiter.api.extension.ExtendWith -//import org.mockito.InjectMocks -//import org.mockito.Mock -//import org.mockito.junit.jupiter.MockitoExtension -// -//@ExtendWith(MockitoExtension::class) -//class ArticleServiceTests { -// @Mock lateinit var tagUseCase: TagUseCase -// @Mock lateinit var categoryUseCase: CategoryUseCase -// @Mock lateinit var memberQueriesUseCase: MemberQueriesUseCase -// @Mock lateinit var articleRepositoryPort: ArticleRepositoryPort -// @Mock lateinit var articleBackupRepositoryPort: ArticleBackupRepositoryPort -// @InjectMocks lateinit var articleService: ArticleService -// -// fun``(){ -// -// } -// -//} \ No newline at end of file