22
33import static org .assertj .core .api .Assertions .assertThat ;
44import static org .assertj .core .api .Assertions .assertThatThrownBy ;
5+ import static org .junit .jupiter .api .Assertions .assertAll ;
56import static org .mockito .Mockito .doReturn ;
67import static org .mockito .Mockito .mock ;
78import static org .mockito .Mockito .when ;
1213import eatda .controller .story .StoryResponse ;
1314import eatda .domain .ImageKey ;
1415import eatda .domain .member .Member ;
16+ import eatda .domain .store .Store ;
1517import eatda .domain .store .StoreCategory ;
1618import eatda .domain .story .Story ;
1719import eatda .exception .BusinessErrorCode ;
@@ -107,7 +109,7 @@ class GetPagedStoryPreviews {
107109 class GetStory {
108110
109111 @ Test
110- void 스토리_상세_정보를_조회할_수_있다 () {
112+ void 스토리_상세_정보를_조회할_때_스토어ID가_없으면_NULL로_반환된다 () {
111113 Member member = memberGenerator .generate ("99999" );
112114
113115 Story story = Story .builder ()
@@ -120,21 +122,61 @@ class GetStory {
120122 .description ("곱창은 여기" )
121123 .imageKey (new ImageKey ("story-image-key" ))
122124 .build ();
125+ storyRepository .save (story );
126+
127+ when (externalImageStorage .getPreSignedUrl (new ImageKey ("story-image-key" )))
128+ .thenReturn ("https://s3.bucket.com/story/dummy/1.jpg" );
129+
130+ StoryResponse response = storyService .getStory (story .getId ());
123131
132+ assertAll (
133+ () -> assertThat (response .storeId ()).isNull (),
134+ () -> assertThat (response .storeKakaoId ()).isEqualTo ("123456" ),
135+ () -> assertThat (response .category ()).isEqualTo ("한식" ),
136+ () -> assertThat (response .storeName ()).isEqualTo ("진또곱창집" ),
137+ () -> assertThat (response .storeDistrict ()).isEqualTo ("성동구" ),
138+ () -> assertThat (response .storeNeighborhood ()).isEqualTo ("성수동1가" ),
139+ () -> assertThat (response .description ()).isEqualTo ("곱창은 여기" ),
140+ () -> assertThat (response .imageUrl ()).isEqualTo ("https://s3.bucket.com/story/dummy/1.jpg" ),
141+ () -> assertThat (response .memberId ()).isEqualTo (member .getId ()),
142+ () -> assertThat (response .memberNickname ()).isEqualTo (member .getNickname ())
143+ );
144+ }
145+
146+ @ Test
147+ void 스토리_상세_정보를_조회할_때_스토어ID가_있으면_해당_ID값을_반환한다 () {
148+ Member member = memberGenerator .generate ("99999" );
149+ Store store = storeGenerator .generate ("123456" , "서울시 성북구 장위동 123-45" );
150+ Story story = Story .builder ()
151+ .member (member )
152+ .storeKakaoId ("123456" )
153+ .storeName ("진또곱창집" )
154+ .storeRoadAddress ("서울시 성동구 왕십리로 1길 12" )
155+ .storeLotNumberAddress ("서울시 성동구 성수동1가 685-12" )
156+ .storeCategory (StoreCategory .KOREAN )
157+ .description ("곱창은 여기" )
158+ .imageKey (new ImageKey ("story-image-key" ))
159+ .build ();
124160 storyRepository .save (story );
125161
126162 when (externalImageStorage .getPreSignedUrl (new ImageKey ("story-image-key" )))
127163 .thenReturn ("https://s3.bucket.com/story/dummy/1.jpg" );
128164
129165 StoryResponse response = storyService .getStory (story .getId ());
130166
131- assertThat (response .storeKakaoId ()).isEqualTo ("123456" );
132- assertThat (response .category ()).isEqualTo ("한식" );
133- assertThat (response .storeName ()).isEqualTo ("진또곱창집" );
134- assertThat (response .storeDistrict ()).isEqualTo ("성동구" );
135- assertThat (response .storeNeighborhood ()).isEqualTo ("성수동1가" );
136- assertThat (response .description ()).isEqualTo ("곱창은 여기" );
137- assertThat (response .imageUrl ()).isEqualTo ("https://s3.bucket.com/story/dummy/1.jpg" );
167+ assertAll (
168+ () -> assertThat (response .storeId ()).isEqualTo (store .getId ()),
169+ () -> assertThat (response .storeKakaoId ()).isEqualTo ("123456" ),
170+ () -> assertThat (response .category ()).isEqualTo ("한식" ),
171+ () -> assertThat (response .storeName ()).isEqualTo ("진또곱창집" ),
172+ () -> assertThat (response .storeDistrict ()).isEqualTo ("성동구" ),
173+ () -> assertThat (response .storeNeighborhood ()).isEqualTo ("성수동1가" ),
174+ () -> assertThat (response .description ()).isEqualTo ("곱창은 여기" ),
175+ () -> assertThat (response .imageUrl ()).isEqualTo ("https://s3.bucket.com/story/dummy/1.jpg" ),
176+ () -> assertThat (response .memberId ()).isEqualTo (member .getId ()),
177+ () -> assertThat (response .memberNickname ()).isEqualTo (member .getNickname ())
178+ );
179+ ;
138180 }
139181
140182 @ Test
0 commit comments