@@ -198,18 +198,19 @@ class ApplyServiceTest extends UnitTestSupport {
198198 @ Test
199199 void 지원상태_조회_시_프로필작성을_하지_않았을_경우_예외발생 () {
200200 // given
201+ Long recruitId = 1L ;
201202 Member member = Member .builder ()
202203 .id (1L )
203204 .name ("지원자명" )
204205 .phoneNumber ("01012345678" )
205206 .build ();
206207 given (memberRepository .findById (member .getId ()))
207208 .willReturn (Optional .of (member ));
208- given (applyRepository .findByMemberIdInActiveRecruit (eq (member .getId ()), any ()))
209+ given (applyRepository .findByMemberIdAndRecruitIdInActiveRecruit (eq (member .getId ()), eq ( recruitId ), any ()))
209210 .willReturn (Optional .empty ());
210211
211212 // expected
212- assertThatThrownBy (() -> applyService .checkApplyStatus (member .getId ()))
213+ assertThatThrownBy (() -> applyService .checkApplyStatus (member .getId (), recruitId ))
213214 .isInstanceOf (ApplyException .class )
214215 .extracting ("errorCode" )
215216 .isEqualTo (ApplyErrorCode .NOT_FOUND_APPLY );
@@ -218,14 +219,15 @@ class ApplyServiceTest extends UnitTestSupport {
218219 @ Test
219220 void 작성_중인_지원서가_있는_경우_TEMP_SAVED_반환 () {
220221 // given
222+ Long recruitId = 1L ;
221223 Member member = Member .builder ()
222224 .id (1L )
223225 .name ("지원자명" )
224226 .phoneNumber ("01012345678" )
225227 .build ();
226228 given (memberRepository .findById (member .getId ()))
227229 .willReturn (Optional .of (member ));
228- given (applyRepository .findByMemberIdInActiveRecruit (eq (member .getId ()), any ()))
230+ given (applyRepository .findByMemberIdAndRecruitIdInActiveRecruit (eq (member .getId ()), eq ( recruitId ), any ()))
229231 .willReturn (Optional .of (
230232 Apply .builder ()
231233 .id (1L )
@@ -234,7 +236,7 @@ class ApplyServiceTest extends UnitTestSupport {
234236 ));
235237
236238 // when
237- ApplyStatusResponse result = applyService .checkApplyStatus (member .getId ());
239+ ApplyStatusResponse result = applyService .checkApplyStatus (member .getId (), recruitId );
238240
239241 // then
240242 assertThat (result .status ()).isEqualTo (TEMP_SAVED );
@@ -243,14 +245,15 @@ class ApplyServiceTest extends UnitTestSupport {
243245 @ Test
244246 void 지원서를_제출한_지원자에_대한_제출_상태_확인_시_SUBMITTED_반환 () {
245247 // given
248+ Long recruitId = 1L ;
246249 Member member = Member .builder ()
247250 .id (1L )
248251 .name ("지원자명" )
249252 .phoneNumber ("01012345678" )
250253 .build ();
251254 given (memberRepository .findById (member .getId ()))
252255 .willReturn (Optional .of (member ));
253- given (applyRepository .findByMemberIdInActiveRecruit (eq (member .getId ()), any ()))
256+ given (applyRepository .findByMemberIdAndRecruitIdInActiveRecruit (eq (member .getId ()), eq ( recruitId ), any ()))
254257 .willReturn (Optional .of (
255258 Apply .builder ()
256259 .id (1L )
@@ -259,12 +262,33 @@ class ApplyServiceTest extends UnitTestSupport {
259262 ));
260263
261264 // when
262- ApplyStatusResponse result = applyService .checkApplyStatus (member .getId ());
265+ ApplyStatusResponse result = applyService .checkApplyStatus (member .getId (), recruitId );
263266
264267 // then
265268 assertThat (result .status ()).isEqualTo (SUBMITTED );
266269 }
267270
271+ @ Test
272+ void 동일_회원이라도_다른_공고ID로_조회하면_지원상태_조회_실패 () {
273+ // given
274+ Long requestedRecruitId = 2L ;
275+ Member member = Member .builder ()
276+ .id (1L )
277+ .name ("지원자명" )
278+ .phoneNumber ("01012345678" )
279+ .build ();
280+ given (memberRepository .findById (member .getId ()))
281+ .willReturn (Optional .of (member ));
282+ given (applyRepository .findByMemberIdAndRecruitIdInActiveRecruit (eq (member .getId ()), eq (requestedRecruitId ), any ()))
283+ .willReturn (Optional .empty ());
284+
285+ // expected
286+ assertThatThrownBy (() -> applyService .checkApplyStatus (member .getId (), requestedRecruitId ))
287+ .isInstanceOf (ApplyException .class )
288+ .extracting ("errorCode" )
289+ .isEqualTo (ApplyErrorCode .NOT_FOUND_APPLY );
290+ }
291+
268292 @ Test
269293 void 지원서_최초_임시저장_성공 () {
270294 // given
0 commit comments