company-profile.service.spec.ts
4.69 KB
-
test: 补齐五个业务模块的 76 条单元测试 · 7aa0eb30
单元测试总数从 25 增至 101,覆盖认证、账号管理、公司档案、公司人员、 手机号、企微、设备与图片存储八个部分。 企微联动 17 条 把此前只靠临时脚本验证的四条规则固化进测试套件:复用已有号码、 自动建档并回填来源、改绑时只清理本账号所建的号、号码未变时完全不动关联。 另有一条专门断言三个写方法都在事务内执行——同时写两张表的操作若不整体成事, 失败会留下无人引用的孤儿号码且毫无征兆。 图片存储 9 条 含路径穿越拒绝(标识来自 URL,不加限制即可读到目录之外的文件)、 缩略图长边 240 且小图不放大、缺缩略图时按需补生成、清理时原图与缩略图一并删除。 这类边界正常使用永远不会触发,功能测试发现不了。 其余模块 公司档案 9 条(删除前的五类引用检查与提示语拼接、空白值存 null) 公司人员 10 条(在职离职联动、改回在职时清空离职时间、公司显示名简称优先) 手机号 14 条(按输入位数变化的五种匹配方式、虚拟号码豁免、剥离 +86 前缀) 设备 17 条(状态枚举、查重带删除时间条件、编号取最大值加一而非数量加一、 写库失败时只清新图保留原图) 一处测试写错并已修正:纯空格前缀的正确行为是视为未填、回落到默认前缀, 与 Java 一致,最初的用例错误地期望它被拒绝。 回归:契约比对 31/31、单元测试 101/101 全部通过。 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
DaiJiezhang authored
×