test(wave199): sticker_engine_pure 单测补全 +141测 #1165
Reference in New Issue
Block a user
Delete Branch "test/wave199-sticker-engine-pure"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
变更内容
补全贴纸引擎纯逻辑模块
apps/worker/video_processing/sticker_engine_pure.py单元测试,覆盖23个纯函数,新增141个测试用例。覆盖函数
安全类型转换 (3个)
safe_float- 安全float转换,含NaN检查safe_int- 安全int转换safe_bool- 安全bool转换,支持字符串变体尺寸估算 (2个)
estimate_sticker_size- 贴纸尺寸估算estimate_text_size- 文字贴纸尺寸估算时间计算 (3个)
calculate_fade_out_start- 淡出开始时间计算calculate_end_time- 结束时间计算has_time_range- 是否有时间范围滤镜构建 (4个)
build_scale_filter- 缩放滤镜构建build_opacity_filter- 透明度滤镜构建build_image_fade_filters- 图片淡入淡出滤镜build_enable_expr- enable表达式构建drawtext相关 (4个)
escape_drawtext_text- 特殊字符转义build_drawtext_alpha_expr- alpha淡入淡出表达式build_stroke_params- 描边参数build_shadow_params- 阴影参数贴纸管理 (3个)
sort_stickers_by_z_index- z-index排序filter_enabled_stickers- 启用过滤count_sticker_types- 类型统计overlay相关 (2个)
build_overlay_position- 位置参数构建build_pre_filter_label- 预处理标签构建验证函数 (2个)
validate_image_sticker- 图片贴纸验证validate_text_sticker- 文字贴纸验证测试数据
🚀 预览环境已部署
【阻塞级判定】
📊 审查概览
🔴 阻塞级问题(必须修复)
无
💡 改进建议(不阻塞合并)
[.env.production.example] CosyVoice 配置变更风险
COSYVOICE_BASE_URL从.../services/aigc/text2audio变更为.../api/v1,且模型版本从v1升级到v3-flash。这是一个破坏性配置变更。请确保代码逻辑(不可见部分)已同步更新,能够正确处理新的 Base URL 拼接逻辑或请求路径,否则会导致语音合成服务在生产环境调用失败。[.gitea/workflows/ci-cd.yml] CI 管道删除验证
ci-cd.yml被删除,文件列表中新增了ci-pipeline.yml等文件。由于 Diff 被截断,无法审查新文件内容。强烈建议确认新的 CI 流程完全覆盖了原文件中的所有测试(单元测试、集成测试、E2E)、构建和部署步骤,避免 CI 覆盖缺失导致上线风险。[.gitea/workflows/acr-cleanup.yml] SSH 错误处理与安全性
set +e,如果 SSH 连接失败(例如网络抖动或密钥失效),错误会被静默忽略,导致PROTECTED_TAGS为空。这可能导致后续清理脚本误删正在运行的服务镜像。建议增加对 SSH 命令退出码的检查,在获取白名单失败时发出警告或终止流程。✅ 良好实践
.gitea/workflows/acr-cleanup.yml中使用printf '%s' "$ACR_PASSWORD"配合--password-stdin进行 Docker 登录,有效避免了密码中包含特殊字符或换行符导致的问题,是最佳实践。.env.example增加了非常详细的注释和配置读取规则说明,极大提高了项目的可维护性和新开发者的上手效率。acr-cleanup.yml配置了concurrencygroup,防止同一资源的清理任务并发冲突。🤖 由 AI 代码审查机器人自动生成 | 2026-07-29 14:35:40 | 模型:
🗑️ 预览环境已清理
PR #1165 已关闭或合并,对应的预览环境已被清理。