diff --git a/src/main/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserService.java b/src/main/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserService.java index 5a923142..3b809c55 100644 --- a/src/main/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserService.java +++ b/src/main/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserService.java @@ -3,6 +3,7 @@ import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.transaction.annotation.Transactional; +import com.plzgraduate.myongjigraduatebe.completedcredit.application.port.DeleteCompletedCreditPort; import com.plzgraduate.myongjigraduatebe.core.meta.UseCase; import com.plzgraduate.myongjigraduatebe.parsing.application.port.DeleteParsingTextHistoryPort; import com.plzgraduate.myongjigraduatebe.takenlecture.application.usecase.delete.DeleteTakenLectureUseCase; @@ -22,6 +23,7 @@ class WithDrawUserService implements WithDrawUserUseCase { private final DeleteTakenLectureUseCase deleteTakenLectureByUserUseCase; private final DeleteParsingTextHistoryPort deleteParsingTextHistoryPort; private final DeleteUserPort deleteUserPort; + private final DeleteCompletedCreditPort deleteCompletedCreditPort; private final PasswordEncoder passwordEncoder; @Override @@ -30,6 +32,7 @@ public void withDraw(Long userId, String password) { user.matchPassword(passwordEncoder, password); deleteTakenLectureByUserUseCase.deleteAllTakenLecturesByUser(user); deleteParsingTextHistoryPort.deleteUserParsingTextHistory(user); + deleteCompletedCreditPort.deleteAllCompletedCredits(user); deleteUserPort.deleteUser(user); } } diff --git a/src/test/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserServiceTest.java b/src/test/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserServiceTest.java index c380a037..0154bd10 100644 --- a/src/test/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserServiceTest.java +++ b/src/test/java/com/plzgraduate/myongjigraduatebe/user/application/service/withdraw/WithDrawUserServiceTest.java @@ -14,6 +14,7 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; +import com.plzgraduate.myongjigraduatebe.completedcredit.application.port.DeleteCompletedCreditPort; import com.plzgraduate.myongjigraduatebe.parsing.application.port.DeleteParsingTextHistoryPort; import com.plzgraduate.myongjigraduatebe.takenlecture.application.usecase.delete.DeleteTakenLectureUseCase; import com.plzgraduate.myongjigraduatebe.user.application.port.DeleteUserPort; @@ -32,6 +33,8 @@ class WithDrawUserServiceTest { @Mock private DeleteUserPort deleteUserPort; @Mock + private DeleteCompletedCreditPort deleteCompletedCreditPort; + @Mock private PasswordEncoder passwordEncoder; @InjectMocks @@ -53,6 +56,7 @@ void withDraw() { withDrawUserService.withDraw(user.getId(), password); then(deleteTakenLectureByUserUseCase).should().deleteAllTakenLecturesByUser(user); then(deleteParsingTextHistoryPort).should().deleteUserParsingTextHistory(user); + then(deleteCompletedCreditPort).should().deleteAllCompletedCredits(user); then(deleteUserPort).should().deleteUser(user); }