|
11 | 11 | import eatda.controller.store.StoreResponse; |
12 | 12 | import eatda.domain.member.Member; |
13 | 13 | import eatda.domain.store.Store; |
| 14 | +import eatda.domain.store.StoreCategory; |
14 | 15 | import eatda.exception.BusinessErrorCode; |
15 | 16 | import eatda.exception.BusinessException; |
16 | 17 | import eatda.service.BaseServiceTest; |
@@ -59,26 +60,51 @@ class GetStore { |
59 | 60 | class GetStores { |
60 | 61 |
|
61 | 62 | @Test |
62 | | - void 음식점_목록을_최신순으로_조회한다() { |
| 63 | + void 모든_카테고리의_음식점_목록을_최신순으로_조회한다() { |
63 | 64 | Member member = memberGenerator.generate("111"); |
64 | 65 | LocalDateTime startAt = LocalDateTime.of(2025, 7, 26, 1, 0, 0); |
65 | | - Store store1 = storeGenerator.generate("농민백암순대", "서울 강남구 대치동 896-33", startAt); |
66 | | - Store store2 = storeGenerator.generate("석관동떡볶이", "서울 성북구 석관동 123-45", startAt.plusHours(1)); |
67 | | - Store store3 = storeGenerator.generate("강남순대국", "서울 강남구 역삼동 678-90", startAt.plusHours(2)); |
| 66 | + Store store1 = storeGenerator.generate("농민백암순대", "서울 강남구 대치동 896-33", StoreCategory.KOREAN, startAt); |
| 67 | + Store store2 = storeGenerator.generate("석관동떡볶이", "서울 성북구 석관동 123-45", StoreCategory.OTHER, |
| 68 | + startAt.plusHours(1)); |
| 69 | + Store store3 = storeGenerator.generate("강남순대국", "서울 강남구 역삼동 678-90", StoreCategory.KOREAN, |
| 70 | + startAt.plusHours(2)); |
68 | 71 | cheerGenerator.generateCommon(member, store1, "image-key-1"); |
69 | 72 | cheerGenerator.generateCommon(member, store2, "image-key-2"); |
70 | 73 | cheerGenerator.generateCommon(member, store3, "image-key-3"); |
71 | | - |
72 | 74 | int size = 2; |
73 | 75 |
|
74 | | - var response = storeService.getStores(size); |
| 76 | + var response = storeService.getStores(size, null); |
75 | 77 |
|
76 | 78 | assertAll( |
77 | 79 | () -> assertThat(response.stores()).hasSize(size), |
78 | 80 | () -> assertThat(response.stores().get(0).id()).isEqualTo(store3.getId()), |
79 | 81 | () -> assertThat(response.stores().get(1).id()).isEqualTo(store2.getId()) |
80 | 82 | ); |
81 | 83 | } |
| 84 | + |
| 85 | + @Test |
| 86 | + void 특정_카테고리의_음식점_목록을_최신순으로_조회한다() { |
| 87 | + Member member = memberGenerator.generate("111"); |
| 88 | + LocalDateTime startAt = LocalDateTime.of(2025, 7, 26, 1, 0, 0); |
| 89 | + Store store1 = storeGenerator.generate("112", "서울 강남구 대치동 896-33", StoreCategory.KOREAN, startAt); |
| 90 | + Store store2 = storeGenerator.generate("113", "서울 성북구 석관동 123-45", StoreCategory.OTHER, |
| 91 | + startAt.plusHours(1)); |
| 92 | + Store store3 = storeGenerator.generate("114", "서울 강남구 역삼동 678-90", StoreCategory.KOREAN, |
| 93 | + startAt.plusHours(2)); |
| 94 | + cheerGenerator.generateCommon(member, store1, "image-key-1"); |
| 95 | + cheerGenerator.generateCommon(member, store2, "image-key-2"); |
| 96 | + cheerGenerator.generateCommon(member, store3, "image-key-3"); |
| 97 | + int size = 2; |
| 98 | + StoreCategory category = StoreCategory.KOREAN; |
| 99 | + |
| 100 | + var response = storeService.getStores(size, category.getCategoryName()); |
| 101 | + |
| 102 | + assertAll( |
| 103 | + () -> assertThat(response.stores()).hasSize(size), |
| 104 | + () -> assertThat(response.stores().get(0).id()).isEqualTo(store3.getId()), |
| 105 | + () -> assertThat(response.stores().get(1).id()).isEqualTo(store1.getId()) |
| 106 | + ); |
| 107 | + } |
82 | 108 | } |
83 | 109 |
|
84 | 110 | @Nested |
|
0 commit comments