diff --git a/http/member.http b/http/member.http index a1d24c7..c34007d 100644 --- a/http/member.http +++ b/http/member.http @@ -29,3 +29,7 @@ Content-Type: application/json { "nickname": "tester1" } + +### 회원 탈퇴 +DELETE http://localhost:8080/api/v1/members +Authorization: Bearer {{accessToken}} \ No newline at end of file diff --git a/src/main/java/ok/cherry/member/domain/Member.java b/src/main/java/ok/cherry/member/domain/Member.java index 15d8bfb..e4d2787 100644 --- a/src/main/java/ok/cherry/member/domain/Member.java +++ b/src/main/java/ok/cherry/member/domain/Member.java @@ -34,7 +34,7 @@ public class Member { @Column(nullable = false) private Provider provider; - @Column(nullable = false, unique = true, updatable = false) + @Column(nullable = false, unique = true) private String providerId; @Embedded @@ -103,5 +103,6 @@ private void deactivateFormatter() { this.email = new Email(localPart + formattedTime + domainPart); this.nickname = this.nickname + formattedTime; + this.providerId = this.providerId + formattedTime; } } \ No newline at end of file diff --git a/src/test/java/ok/cherry/member/application/MemberApplicationServiceTest.java b/src/test/java/ok/cherry/member/application/MemberApplicationServiceTest.java index f105a22..fbe505c 100644 --- a/src/test/java/ok/cherry/member/application/MemberApplicationServiceTest.java +++ b/src/test/java/ok/cherry/member/application/MemberApplicationServiceTest.java @@ -51,6 +51,7 @@ void deactivateMember_success() { String originalEmail = savedMember.getEmail().address(); String originalNickname = savedMember.getNickname(); + String originalProviderId = savedMember.getProviderId(); TokenResponse tokenResponse = authService.login(savedMember.getProviderId()); String accessToken = tokenResponse.accessToken(); @@ -63,7 +64,7 @@ void deactivateMember_success() { .orElseThrow(); assertThat(deactivatedMember.getMemberStatus()).isEqualTo(MemberStatus.DEACTIVATED); - // 이메일과 닉네임에 탈퇴일시가 포맷되어 저장되었는지 검증 + // 이메일, 닉네임, providerId에 탈퇴일시가 포맷되어 저장되었는지 검증 LocalDateTime deactivatedAt = deactivatedMember.getDetail().getDeactivatedAt(); String formattedTime = deactivatedAt.format(DEACTIVATION_DATE_FORMATTER); @@ -73,6 +74,7 @@ void deactivateMember_success() { assertThat(deactivatedMember.getEmail().address()).isEqualTo(localPart + formattedTime + domainPart); assertThat(deactivatedMember.getNickname()).isEqualTo(originalNickname + formattedTime); + assertThat(deactivatedMember.getProviderId()).isEqualTo(originalProviderId + formattedTime); // 로그아웃 되었는지 검증 assertThat(authRedisRepository.getRefreshToken(savedMember.getProviderId())).isNull();