test(media): 覆盖转码入队与重转幂等
This commit is contained in:
1 parent
cd51aabe7e
commit
7e6075a2e9
5 files changed
+435
No files matched your search
@@ -25205,3 +25205,54 @@ dramaTitle/episodeNumber/totalEpisodes 非空、越界页空 list 且 total 保
|
||||
`limit` 旧 List 兼容均通过;服务层断言 `selectPage`、稳定排序和两批 IN 查询。
|
||||
未启停服务、未操作真机、未修改客户端。
|
||||
|
||||
## 2026-10-22 后台转码链路打通 P1
|
||||
|
||||
- 分支:`feature/media-transcode-pipeline`
|
||||
- 基线:`develop` / `origin/develop` = `cd51aabe`
|
||||
- 隔离工作树:`/private/tmp/fruitserver-media-pipeline`
|
||||
- 计划:`docs/plans/2026-10-22-media-transcode-pipeline.md`
|
||||
|
||||
### 现状取证
|
||||
|
||||
- `/admin/media/upload/complete`:视频完成合并后会调用
|
||||
`transcodeService.enqueue(assetId, 0L, 0L, sourceUrl)`;图片直接置 ready,不入队。
|
||||
- 分集创建/更新并保存 `videoUrl`:`EpisodeService` 调用
|
||||
`EpisodeTranscodeBindingService.bind`,按 objectKey 找到 `media_asset`,
|
||||
再把 `dramaId/episodeId/sourceUrl` 绑定到任务;未完成任务复用,不重复入队。
|
||||
- worker:`claimNext` 只认领 `episode_id > 0`;成功后回填媒资 HLS、分集播放地址与时长;
|
||||
失败超过 3 次写 `FAILED + error_msg`。这些既有链路已由新增测试锁定。
|
||||
- 实际缺口:后台没有手动触发/重转接口,也没有其幂等测试。
|
||||
|
||||
### TDD 红测
|
||||
|
||||
先只提交测试,不写生产实现。定向命令:
|
||||
|
||||
```text
|
||||
$ mvn -pl fruitshorts-transcode-worker -am \
|
||||
-Dtest=MediaServiceTranscodePipelineTest,TranscodeServiceTriggerTest \
|
||||
-Dsurefire.failIfNoSpecifiedTests=false test
|
||||
[ERROR] ... MediaServiceTranscodePipelineTest.java:[13,32] 找不到符号
|
||||
符号: 类 TranscodeTriggerRespVO
|
||||
[ERROR] ... TranscodeServiceTriggerTest.java:[15,32] 找不到符号
|
||||
符号: 类 TranscodeTriggerRespVO
|
||||
[INFO] fruitshorts-transcode-worker ....................... FAILURE
|
||||
[INFO] BUILD FAILURE
|
||||
```
|
||||
|
||||
解读:失败原因为预期的生产接口尚不存在,不是测试环境或既有代码编译问题。
|
||||
下一步再实现最小生产代码令红测转绿。
|
||||
|
||||
控制器契约红测同样先失败在缺失的响应类型:
|
||||
|
||||
```text
|
||||
$ mvn -pl fruitshorts-admin-api -am \
|
||||
-Dtest=MediaTranscodeTriggerContractTest \
|
||||
-Dsurefire.failIfNoSpecifiedTests=false test
|
||||
[ERROR] MediaTranscodeTriggerContractTest.java:[11,32] 找不到符号
|
||||
符号: 类 TranscodeTriggerRespVO
|
||||
[INFO] fruitshorts-admin-api .............................. FAILURE
|
||||
[INFO] BUILD FAILURE
|
||||
```
|
||||
|
||||
解读:控制器测试已经先于实现落地,现有上传/分集链路未被破坏。
|
||||
|
||||
Reference in new issue
Block a user