test: wave216 template use cases +46单测(12个UC全量覆盖) #1188

Merged
xiaoxia merged 2 commits from test/wave216-template-use-cases into develop 2026-07-30 08:45:16 +08:00

2 Commits

Author SHA1 Message Date
xiaoxia 1f2f1d5d5b test: wave216 add 46 unit tests for template use cases (12个UC全量覆盖)
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 30s
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 1m10s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m7s
AI Code Review / AI Code Review (pull_request) Successful in 1m16s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 59s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m35s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 4m33s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 4m43s
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m13s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 5m37s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 5m36s
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m34s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Successful in 50s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
ACR Cleanup / ACR Image Cleanup (pull_request_target) Has been cancelled
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 2m22s
覆盖的 Use Cases:
- CreateTemplateUseCase (创建+片段创建,模式校验)
- ListTemplatesUseCase (无过滤/带过滤/分页)
- CountTemplatesUseCase (无过滤/带过滤)
- GetTemplateUseCase (存在/不存在)
- UpdateTemplateUseCase (改名字/模式/片段/NONE不修改,模式校验)
- DeleteTemplateUseCase (成功/失败)
- CopyTemplateUseCase (成功/不存在/空名/空白名/strip)
- ValidateTemplateUseCase (核心业务校验):
  - one_take模式必须恰好1个片段
  - voice_over模式每个片段必须有有效material_type
  - 配音时长±30%偏差警告
  - 边界值(0.7/1.3精确边界)
  - zero/None voiceover_duration跳过
  - warnings详情结构验证
- CreateCategoryUseCase / ListCategoriesUseCase / DeleteCategoryUseCase
- ListTagsUseCase
- GetTemplateUsageUseCase
2026-07-30 08:18:16 +08:00
xiaoxia b1d4f466e4 test: wave215 add 77 unit tests for video_share (domain + use cases)
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 49s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 1m53s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 1m56s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m43s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m55s
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
PR Automation / Auto Approve on CI Green (pull_request) Successful in 4m8s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 4m37s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 4m12s
AI Code Review / AI Code Review (pull_request) Successful in 7m4s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 4m23s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 4m21s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m34s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Successful in 40s
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 1m17s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Waiting to run
Domain层 (43测):
- 密码哈希 (加盐SHA-256)
- Token生成 (去歧义字符、长度、URL友好)
- VideoShare.create 校验 (空ID、空白、去重、过期时间校验)
- has_password / is_expired / is_accessible 属性
- verify_password 密码验证
- 浏览/下载计数
- revoke 撤销分享

Use case层 (34测):
- CreateShareUseCase (视频存在性/所有权校验)
- GetShareByTokenUseCase (过期/撤销拦截)
- AccessShareUseCase (密码校验、浏览量+1、视频查询)
- ListSharesByVideoUseCase / ListSharesByUserUseCase (分页)
- UpdateShareUseCase (改密码/清密码/改过期时间)
- RevokeShareUseCase
- RecordShareDownloadUseCase (密码校验、下载量+1)
2026-07-30 08:13:44 +08:00