fix(mobile): converge work report confirmation

This commit is contained in:
key
2026-07-30 00:14:42 +08:00
parent 5027bef32d
commit 380d8e6e32
6 changed files with 54 additions and 6 deletions
+24 -1
View File
@@ -36,7 +36,8 @@ test('语音转写、文字和附件补充都进入无状态整理', async () =>
assert.match(page, /transcribeSpeechFile/);
assert.match(page, /organizeWorkReport\(/);
assert.match(page, /const previousDraft = draftPayload\(\)/);
assert.match(page, /currentDraft:\s*previousDraft/);
assert.match(page, /prepareWorkReportOrganizeInput\(transcript, previousDraft\)/);
assert.match(page, /currentDraft:\s*organizeRequest\.currentDraft/);
assert.match(page, /attachmentOssId:\s*attachment\.value\?\.ossId/);
assert.match(page, /void organizeInput\(text, \{ voice: false \}\)/);
assert.match(page, /void addMediaAttachment\(\)/);
@@ -171,4 +172,26 @@ test('幂等键与异步账号守卫是可执行行为,不只是源码字符
assert.equal(state.isCurrentWorkReportRequest(3, 3, 'account-a', 'account-a'), true);
assert.equal(state.isCurrentWorkReportRequest(2, 3, 'account-a', 'account-a'), false);
assert.equal(state.isCurrentWorkReportRequest(3, 3, 'account-a', 'account-b'), false);
const firstTurn = state.prepareWorkReportOrganizeInput(' 首轮原话 ');
assert.deepEqual(firstTurn, { transcript: '首轮原话' });
const existingDraft = {
suggestedType: 'CASE',
title: '真机验收',
content: '已完成文件选择和 ASR'
};
const followUp = state.prepareWorkReportOrganizeInput(' 补充设备和结果 ', existingDraft);
assert.deepEqual(followUp, {
transcript: '',
currentDraft: {
suggestedType: 'CASE',
title: '真机验收',
content: '已完成文件选择和 ASR\n补充设备和结果'
}
});
assert.equal(existingDraft.content, '已完成文件选择和 ASR');
const duplicate = state.prepareWorkReportOrganizeInput(' 已完成文件选择和 ASR ', existingDraft);
assert.equal(duplicate.currentDraft.content, '已完成文件选择和 ASR');
});