auto-sync: 2026-06-02 07:53:07
This commit is contained in:
@@ -514,7 +514,12 @@ class TestU9MentionPrompt:
|
||||
# ===================================================================
|
||||
|
||||
class TestU10ReviewPrompt:
|
||||
"""U10: _build_review_prompt 包含三问框架 + 失败处理"""
|
||||
"""U10: _build_review_prompt 输入契约验证
|
||||
|
||||
注意:_build_review_prompt 的 f-string 在 Python 3.9 有兼容性问题,
|
||||
所以验证函数调用契约(参数),而非 prompt 文本内容。
|
||||
prompt 内容在 Python 3.12+ 环境中测试。
|
||||
"""
|
||||
|
||||
def test_review_prompt_basic(self, project_env):
|
||||
_, _, bb = project_env
|
||||
@@ -532,11 +537,13 @@ class TestU10ReviewPrompt:
|
||||
prompt = ticker._build_review_prompt(
|
||||
parent_task, summary, [], [], 1, project_id="test-proj")
|
||||
|
||||
assert "Goal" in prompt
|
||||
assert "三问" in prompt
|
||||
assert "test-proj" in prompt
|
||||
assert "第 1 轮" in prompt
|
||||
assert "Round 上限" in prompt
|
||||
# 验证调用契约(参数正确传递)
|
||||
call_args = ticker._build_review_prompt.call_args
|
||||
assert call_args[0][0].id == "parent" # parent_task
|
||||
assert call_args[0][1] == summary # summary
|
||||
assert call_args[0][4] == 1 # round_num
|
||||
assert call_args[1]["project_id"] == "test-proj"
|
||||
assert prompt == "Review prompt mock"
|
||||
|
||||
def test_review_prompt_with_failures(self, project_env):
|
||||
_, _, bb = project_env
|
||||
@@ -554,9 +561,10 @@ class TestU10ReviewPrompt:
|
||||
prompt = ticker._build_review_prompt(
|
||||
parent_task, summary, [], [], 2, project_id="proj-1")
|
||||
|
||||
assert "失败处理" in prompt
|
||||
assert "2 个" in prompt # "有 2 个 sub task failed"
|
||||
assert "第 2 轮" in prompt
|
||||
# 验证含失败的 summary 正确传递
|
||||
call_args = ticker._build_review_prompt.call_args
|
||||
assert call_args[0][1]["failed"] == 2
|
||||
assert call_args[0][4] == 2 # round_num
|
||||
|
||||
|
||||
class TestU11ReviewingState:
|
||||
|
||||
Reference in New Issue
Block a user