feat: 完成分享、单会话与发布审批改造
- 增加工作流协作分享与知识库卡片分享入口,统一低版本浏览器复制反馈 - Web 新登录替换旧会话,并保持 API Key 会话隔离 - 发布审批增加必填说明并在审批详情展示 - 账号重置与导入改用可配置默认强密码
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
package tech.easyflow.approval.support;
|
||||
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
import tech.easyflow.approval.enums.ApprovalActionType;
|
||||
import tech.easyflow.common.web.exceptions.BusinessException;
|
||||
|
||||
/**
|
||||
* {@link ApprovalApplicationReasonPolicy} 测试。
|
||||
*/
|
||||
public class ApprovalApplicationReasonPolicyTest {
|
||||
|
||||
/**
|
||||
* 验证命中发布审批时说明必填并去除首尾空白。
|
||||
*/
|
||||
@Test
|
||||
public void shouldNormalizeRequiredPublishReason() {
|
||||
String result = ApprovalApplicationReasonPolicy.normalize(
|
||||
true,
|
||||
ApprovalActionType.PUBLISH.getCode(),
|
||||
" 修复校验逻辑并补充测试 "
|
||||
);
|
||||
|
||||
Assert.assertEquals("修复校验逻辑并补充测试", result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 验证命中发布审批时拒绝空说明。
|
||||
*/
|
||||
@Test(expected = BusinessException.class)
|
||||
public void shouldRejectBlankRequiredPublishReason() {
|
||||
ApprovalApplicationReasonPolicy.normalize(
|
||||
true,
|
||||
ApprovalActionType.PUBLISH.getCode(),
|
||||
" "
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 验证命中发布审批时拒绝超过 500 字的说明。
|
||||
*/
|
||||
@Test(expected = BusinessException.class)
|
||||
public void shouldRejectOversizedRequiredPublishReason() {
|
||||
ApprovalApplicationReasonPolicy.normalize(
|
||||
true,
|
||||
ApprovalActionType.PUBLISH.getCode(),
|
||||
"a".repeat(501)
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* 验证未命中审批或非发布动作无需说明。
|
||||
*/
|
||||
@Test
|
||||
public void shouldIgnoreReasonWhenItIsNotRequired() {
|
||||
Assert.assertNull(ApprovalApplicationReasonPolicy.normalize(
|
||||
false,
|
||||
ApprovalActionType.PUBLISH.getCode(),
|
||||
null
|
||||
));
|
||||
Assert.assertNull(ApprovalApplicationReasonPolicy.normalize(
|
||||
true,
|
||||
ApprovalActionType.OFFLINE.getCode(),
|
||||
null
|
||||
));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user