From 321564177399931273e63647f37cdddd268fa5a5 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期日, 08 十一月 2026 21:50:35 +0800
Subject: [PATCH] fix: 修复全流程测试 P0/P1 问题

---
 yudao-module-bpm/src/test/java/cn/iocoder/yudao/module/bpm/framework/flowable/core/candidate/BpmTaskCandidateInvokerTest.java |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/yudao-module-bpm/src/test/java/cn/iocoder/yudao/module/bpm/framework/flowable/core/candidate/BpmTaskCandidateInvokerTest.java b/yudao-module-bpm/src/test/java/cn/iocoder/yudao/module/bpm/framework/flowable/core/candidate/BpmTaskCandidateInvokerTest.java
index 308d866..6117f1c 100644
--- a/yudao-module-bpm/src/test/java/cn/iocoder/yudao/module/bpm/framework/flowable/core/candidate/BpmTaskCandidateInvokerTest.java
+++ b/yudao-module-bpm/src/test/java/cn/iocoder/yudao/module/bpm/framework/flowable/core/candidate/BpmTaskCandidateInvokerTest.java
@@ -1,5 +1,6 @@
 package cn.iocoder.yudao.module.bpm.framework.flowable.core.candidate;
 
+import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.map.MapUtil;
 import cn.hutool.extra.spring.SpringUtil;
 import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
@@ -40,7 +41,7 @@
 /**
  * {@link BpmTaskCandidateInvoker} 鐨勫崟鍏冩祴璇�
  *
- * @author 鑺嬮亾婧愮爜
+ * @author 瓒呯骇绠$悊鍛�
  */
 public class BpmTaskCandidateInvokerTest extends BaseMockitoUnitTest {
 
@@ -64,7 +65,7 @@
     public void setUp() {
         userStrategy = new BpmTaskCandidateUserStrategy(); // 鍒涘缓 strategy 瀹炰緥
         when(emptyStrategy.getStrategy()).thenReturn(BpmTaskCandidateStrategyEnum.ASSIGN_EMPTY);
-        strategyList = List.of(userStrategy, emptyStrategy); // 鍒涘缓 strategyList
+        strategyList = ListUtil.of(userStrategy, emptyStrategy); // 鍒涘缓 strategyList
         taskCandidateInvoker = new BpmTaskCandidateInvoker(strategyList, adminUserApi);
     }
 
@@ -271,4 +272,23 @@
         assertEquals(asSet(1L), assigneeUserIds);
     }
 
+    @Test
+    public void testRemoveDisableUsers_keepDisabledUser() {
+        // 鍑嗗鍙傛暟锛�2L 琚鐢紝浣嗗畠鏄彂璧蜂汉鑺傜偣闇�瑕佷繚鐣欑殑鍙戣捣浜猴紱3L 鎵句笉鍒�
+        Set<Long> assigneeUserIds = asSet(1L, 2L, 3L);
+        // mock 鏂规硶
+        AdminUserRespDTO user1 = randomPojo(AdminUserRespDTO.class, o -> o.setId(1L)
+                .setStatus(CommonStatusEnum.ENABLE.getStatus()));
+        AdminUserRespDTO user2 = randomPojo(AdminUserRespDTO.class, o -> o.setId(2L)
+                .setStatus(CommonStatusEnum.DISABLE.getStatus()));
+        Map<Long, AdminUserRespDTO> userMap = MapUtil.builder(user1.getId(), user1)
+                .put(user2.getId(), user2).build();
+        when(adminUserApi.getUserMap(eq(assigneeUserIds))).thenReturn(userMap);
+
+        // 璋冪敤
+        taskCandidateInvoker.removeDisableUsers(assigneeUserIds, 2L);
+        // 鏂█锛氫繚鐣欒绂佺敤鐨勫彂璧蜂汉 2L锛岀Щ闄や笉瀛樺湪鐨� 3L
+        assertEquals(asSet(1L, 2L), assigneeUserIds);
+    }
+
 }

--
Gitblit v1.9.3