Skip to content

Commit 76ca21b

Browse files
Merge pull request #265 from prgrms-web-devcourse-final-project/refactor/share-proposal-valid(WR9-152)
refactor 공유 제안 금칙어 검증
2 parents b63ec33 + ff51ee6 commit 76ca21b

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

src/main/java/io/crops/warmletter/domain/share/service/ShareProposalService.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package io.crops.warmletter.domain.share.service;
22
import io.crops.warmletter.domain.auth.facade.AuthFacade;
3+
import io.crops.warmletter.domain.badword.service.BadWordService;
34
import io.crops.warmletter.domain.share.dto.request.ShareProposalRequest;
45
import io.crops.warmletter.domain.share.dto.response.ShareInboxResponse;
56
import io.crops.warmletter.domain.share.dto.response.ShareProposalDetailResponse;
@@ -29,12 +30,12 @@ public class ShareProposalService {
2930
private final ShareProposalLetterRepository shareProposalLetterRepository;
3031
private final SharePostRepository sharePostRepository;
3132
private final AuthFacade authFacade;
32-
33+
private final BadWordService badWordService;
3334
private final ApplicationEventPublisher notificationPublisher;
3435

3536
@Transactional
3637
public ShareProposalResponse requestShareProposal(ShareProposalRequest request) {
37-
38+
badWordService.validateText(request.getMessage());
3839
Long requesterId = authFacade.getCurrentUserId();
3940

4041
ShareProposal shareProposal = shareProposalRepository.save(request.toEntity(requesterId));

src/test/java/io/crops/warmletter/domain/share/service/ShareProposalServiceTest.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package io.crops.warmletter.domain.share.service;
22
import io.crops.warmletter.domain.auth.facade.AuthFacade;
3+
import io.crops.warmletter.domain.badword.service.BadWordService;
34
import io.crops.warmletter.domain.share.dto.request.ShareProposalRequest;
45
import io.crops.warmletter.domain.share.dto.response.*;
56
import io.crops.warmletter.domain.share.entity.SharePost;
@@ -48,6 +49,9 @@ class ShareProposalServiceTest {
4849
@Mock
4950
private ApplicationEventPublisher notificationPublisher;
5051

52+
@Mock
53+
private BadWordService badWordService;
54+
5155
@Mock
5256
private AuthFacade authFacade;
5357

@@ -73,6 +77,7 @@ void requestShareProposal_Success() {
7377
when(authFacade.getCurrentUserId()).thenReturn(requesterId);
7478
when(shareProposalRepository.save(any(ShareProposal.class))).thenReturn(shareProposal);
7579
when(shareProposalRepository.findShareProposalWithZipCode(anyLong())).thenReturn(expectedResponse);
80+
doNothing().when(badWordService).validateText(request.getMessage());
7681

7782
ShareProposalResponse response = shareProposalService.requestShareProposal(request);
7883

@@ -82,6 +87,7 @@ void requestShareProposal_Success() {
8287
() -> assertEquals(expectedResponse.getZipCode(), response.getZipCode())
8388
);
8489

90+
verify(badWordService).validateText(request.getMessage());
8591
verify(authFacade).getCurrentUserId(); // AuthFacade 호출 검증 추가
8692
verify(shareProposalRepository).save(any(ShareProposal.class));
8793
verify(shareProposalLetterRepository).saveAll(anyList());
@@ -103,11 +109,13 @@ void requestShareProposal_ThrowsException_WhenLetterIdsInvalid() {
103109
);
104110

105111
when(authFacade.getCurrentUserId()).thenReturn(currentUserId);
112+
doNothing().when(badWordService).validateText(request.getMessage());
106113

107114
// when & then
108115
NullPointerException exception = assertThrows(NullPointerException.class, () ->
109116
shareProposalService.requestShareProposal(request));
110117

118+
verify(badWordService).validateText(request.getMessage());
111119
verify(authFacade).getCurrentUserId();
112120
}
113121

@@ -219,6 +227,7 @@ void requestShareProposal_LetterSaveFail() {
219227
verify(shareProposalRepository).save(any(ShareProposal.class));
220228
}
221229

230+
222231
@Test
223232
@DisplayName("존재하지 않는 공유 제안 승인 실패")
224233
void approveShareProposal_NotFound() {

0 commit comments

Comments
 (0)