From 39f6fca28e3f78abe48f08e474ec011abb990b36 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期三, 09 九月 2026 10:39:21 +0800
Subject: [PATCH] update

---
 backend/src/test/java/com/tourguide/modules/user/service/GuideRegistrationServiceTest.java |   16 +++++++++++++++-
 1 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/backend/src/test/java/com/tourguide/modules/user/service/GuideRegistrationServiceTest.java b/backend/src/test/java/com/tourguide/modules/user/service/GuideRegistrationServiceTest.java
index ef53bd8..6637bae 100644
--- a/backend/src/test/java/com/tourguide/modules/user/service/GuideRegistrationServiceTest.java
+++ b/backend/src/test/java/com/tourguide/modules/user/service/GuideRegistrationServiceTest.java
@@ -7,6 +7,7 @@
 import com.tourguide.modules.user.dto.GuideRegistrationTokenResponse;
 import com.tourguide.modules.user.dto.SmsCodeResponse;
 import com.tourguide.modules.user.entity.GuideApplication;
+import com.tourguide.modules.user.entity.GuideUser;
 import com.tourguide.modules.user.mapper.GuideApplicationMapper;
 import com.tourguide.modules.user.mapper.GuideTeamMapper;
 import org.junit.jupiter.api.BeforeEach;
@@ -28,6 +29,7 @@
     private ValueOperations<String, String> valueOperations;
     private GuideApplicationMapper applicationMapper;
     private GuideVerificationCodeService verificationCodeService;
+    private GuideUserService guideUserService;
     private GuideRegistrationService service;
 
     @SuppressWarnings("unchecked")
@@ -41,7 +43,7 @@
                 .thenReturn("13800138000");
         when(applicationMapper.selectCount(any())).thenReturn(0L);
 
-        GuideUserService guideUserService = mock(GuideUserService.class);
+        guideUserService = mock(GuideUserService.class);
         when(guideUserService.findByPhone("13800138000")).thenReturn(null);
         OperationCityMapper cityMapper = mock(OperationCityMapper.class);
         OperationCity city = new OperationCity();
@@ -81,6 +83,18 @@
     }
 
     @Test
+    void shouldAllowCancelledGuideToRegisterAgain() {
+        GuideUser guide = new GuideUser();
+        guide.setStatus(GuideUserService.STATUS_CANCELLED);
+        when(guideUserService.findByPhone("13800138000")).thenReturn(guide);
+
+        GuideRegistrationTokenResponse response = service.verifyPhone("13800138000", "794535");
+
+        assertThat(response.getRegistrationToken()).isNotBlank();
+        verify(verificationCodeService).verifyAndConsume("13800138000", "794535", "registration");
+    }
+
+    @Test
     void shouldCreatePendingApplicationAndConsumeToken() {
         GuideRegistrationSubmitRequest request = new GuideRegistrationSubmitRequest();
         request.setRealName("张导游");

--
Gitblit v1.7.1