From f522bc47e6123e7e10cdeb562e7b33d7a42233c2 Mon Sep 17 00:00:00 2001 From: wlsh44 Date: Thu, 25 Sep 2025 10:27:51 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=ED=88=AC=ED=91=9C=20=EC=B7=A8=EC=86=8C?= =?UTF-8?q?=ED=95=9C=20=EA=B2=8C=EC=8B=9C=EA=B8=80=EC=9D=B4=20=EA=B3=84?= =?UTF-8?q?=EC=86=8D=20=EC=A1=B0=ED=9A=8C=EB=90=98=EB=8A=94=20=EB=B2=84?= =?UTF-8?q?=EA=B7=B8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../post/persistence/PostQueryDslRepository.java | 5 ++++- .../chooz/post/application/PostQueryServiceTest.java | 11 +++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/chooz/post/persistence/PostQueryDslRepository.java b/src/main/java/com/chooz/post/persistence/PostQueryDslRepository.java index e2ad17b..dc3d2d1 100644 --- a/src/main/java/com/chooz/post/persistence/PostQueryDslRepository.java +++ b/src/main/java/com/chooz/post/persistence/PostQueryDslRepository.java @@ -172,7 +172,10 @@ public Slice findVotedPostsWithVoteCount(Long userId, Long po JPAExpressions .select(vote.postId) .from(vote) - .where(vote.userId.eq(userId)) + .where( + vote.userId.eq(userId), + vote.deleted.isFalse() + ) ), cursor(postId, post.id), post.deleted.isFalse() diff --git a/src/test/java/com/chooz/post/application/PostQueryServiceTest.java b/src/test/java/com/chooz/post/application/PostQueryServiceTest.java index 4714a04..9a0973e 100644 --- a/src/test/java/com/chooz/post/application/PostQueryServiceTest.java +++ b/src/test/java/com/chooz/post/application/PostQueryServiceTest.java @@ -15,6 +15,7 @@ import com.chooz.thumbnail.domain.ThumbnailRepository; import com.chooz.user.domain.User; import com.chooz.user.domain.UserRepository; +import com.chooz.vote.application.VoteService; import com.chooz.vote.domain.Vote; import com.chooz.vote.domain.VoteRepository; import org.junit.jupiter.api.DisplayName; @@ -53,6 +54,8 @@ class PostQueryServiceTest extends IntegrationTest { @Autowired ThumbnailRepository thumbnailRepository; + @Autowired + private VoteService voteService; @Test @DisplayName("게시글 조회") @@ -242,10 +245,18 @@ void findVotedPosts_multiple() { .userId(user.getId()) .pollOption(PostFixture.multiplePollOption()) .build()); + Post post2 = postRepository.save(PostFixture.createPostBuilder() + .userId(user.getId()) + .pollOption(PostFixture.multiplePollOption()) + .build()); //유저1 선택지 1, 2 복수 투표 voteRepository.save(VoteFixture.createDefaultVote(user.getId(), post.getId(), post.getPollChoices().get(0).getId())); voteRepository.save(VoteFixture.createDefaultVote(user.getId(), post.getId(), post.getPollChoices().get(1).getId())); + //유저1 게시글2 투표 후 취소 + voteRepository.save(VoteFixture.createDefaultVote(user.getId(), post2.getId(), post2.getPollChoices().get(1).getId())); + voteService.vote(user.getId(), post2.getId(), List.of()); + //when var response = postService.findVotedPosts(user.getId(), null, 10);