Files
life-echo/api/tests/test_eval_composite.py
Kevin 064ad2161d refactor(eval+memoir):精简内部评测路由与服务,composite/对话摘要与 judge 能力补强
- 访谈:新增 interview_state_hints,联动 orchestrator 与提示词
- 回忆录:story_pipeline_sync/state/memory/post_commit 与 Celery 任务调整
- 基建:开发用 celery broker、compose/development 脚本、依赖注入
- eval-web:移除数据集/实验/版本等页面与流式轮询,突出 Playground
- 文档与单测同步
2026-04-08 21:36:12 +08:00

19 lines
749 B
Python

"""评测合成分:评审缺失侧不得被当作 0 分。"""
from app.features.evaluation.composite_score import _composite
def test_composite_none_when_both_missing() -> None:
assert _composite(None, None, None) is None
assert _composite(None, None, {"conversation": 0.7, "memoir": 0.3}) is None
def test_composite_weighted_when_both_present() -> None:
assert _composite(80.0, 60.0, {"conversation": 0.5, "memoir": 0.5}) == 70.0
assert _composite(100.0, 0.0, {"conversation": 0.8, "memoir": 0.2}) == 80.0
def test_composite_single_side_uses_raw_score() -> None:
assert _composite(77.0, None, {"conversation": 0.5, "memoir": 0.5}) == 77.0
assert _composite(None, 55.5, {"conversation": 0.5, "memoir": 0.5}) == 55.5