Skip to content

Commit a130d1b

Browse files
committed
feat: 최신 응원 검색 API 에 응원 태그 응답 추가
1 parent eb6f3aa commit a130d1b

File tree

4 files changed

+10
-4
lines changed

4 files changed

+10
-4
lines changed

src/main/java/eatda/controller/cheer/CheerPreviewResponse.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package eatda.controller.cheer;
22

33
import eatda.domain.cheer.Cheer;
4+
import eatda.domain.cheer.CheerTagName;
5+
import java.util.List;
46

57
public record CheerPreviewResponse(
68
long storeId,
@@ -11,6 +13,7 @@ public record CheerPreviewResponse(
1113
String storeCategory,
1214
long cheerId,
1315
String cheerDescription,
16+
List<CheerTagName> tags,
1417
long memberId,
1518
String memberNickname
1619
) {
@@ -25,6 +28,7 @@ public CheerPreviewResponse(Cheer cheer, String imageUrl) {
2528
cheer.getStore().getCategory().getCategoryName(),
2629
cheer.getId(),
2730
cheer.getDescription(),
31+
cheer.getCheerTagNames(),
2832
cheer.getMember().getId(),
2933
cheer.getMember().getNickname()
3034
);

src/main/java/eatda/repository/cheer/CheerRepository.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313

1414
public interface CheerRepository extends JpaRepository<Cheer, Long> {
1515

16-
@EntityGraph(attributePaths = {"store", "member"})
16+
@EntityGraph(attributePaths = {"store", "member", "cheerTags"})
1717
List<Cheer> findAllByOrderByCreatedAtDesc(Pageable pageable);
1818

1919
@EntityGraph(attributePaths = {"member"})

src/test/java/eatda/controller/cheer/CheerControllerTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,8 @@ class GetCheers {
100100
() -> assertThat(firstResponse.storeId()).isEqualTo(store2.getId()),
101101
() -> assertThat(firstResponse.storeDistrict()).isEqualTo("성북구"),
102102
() -> assertThat(firstResponse.storeNeighborhood()).isEqualTo("석관동"),
103-
() -> assertThat(firstResponse.cheerId()).isEqualTo(cheer3.getId())
103+
() -> assertThat(firstResponse.cheerId()).isEqualTo(cheer3.getId()),
104+
() -> assertThat(firstResponse.tags()).isEmpty()
104105
);
105106
}
106107

src/test/java/eatda/document/store/CheerDocumentTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@ class GetCheers {
157157
fieldWithPath("cheers[].storeCategory").type(STRING).description("가게 카테고리"),
158158
fieldWithPath("cheers[].cheerId").type(NUMBER).description("응원 ID"),
159159
fieldWithPath("cheers[].cheerDescription").type(STRING).description("응원 내용"),
160+
fieldWithPath("cheers[].tags").type(ARRAY).description("응원 태그 목록"),
160161
fieldWithPath("cheers[].memberId").type(NUMBER).description("응원 작성자 회원 ID"),
161162
fieldWithPath("cheers[].memberNickname").type(STRING).description("응원 작성자 닉네임")
162163
);
@@ -167,9 +168,9 @@ class GetCheers {
167168
int size = 2;
168169
CheersResponse responses = new CheersResponse(List.of(
169170
new CheerPreviewResponse(2L, "https://example.image", "농민백암순대 본점", "강남구", "선릉구", "한식", 2L,
170-
"너무 맛있어요!", 5L, "커찬"),
171+
"너무 맛있어요!", List.of(CheerTagName.INSTAGRAMMABLE, CheerTagName.CLEAN_RESTROOM), 5L, "커찬"),
171172
new CheerPreviewResponse(1L, null, "석관동떡볶이", "성북구", "석관동", "기타", 1L,
172-
"너무 매워요! 하지만 맛있어요!", 8L, "찬커")
173+
"너무 매워요! 하지만 맛있어요!", List.of(), 8L, "찬커")
173174
));
174175
doReturn(responses).when(cheerService).getCheers(page, size);
175176

0 commit comments

Comments
 (0)