Files
2026-08-21 16:00:13 +08:00

35 lines
1.2 KiB
Python

"""大周天记忆/世界抽取 prompt 构建纯函数测试。"""
from app.modules.big_cycle.prompts import EvaluationSnapshot
from app.modules.extraction.prompts import build_extraction_messages
def _snapshot() -> EvaluationSnapshot:
return EvaluationSnapshot(
character_id="character_x",
memory_count=15,
recent_memories=[("用户偏好简洁", "用户偏好简洁直接的回答")],
personality_summary="身份:魂镜",
world_entity_count=4,
conclusion="近期对话涉及项目X,存在背景缺口",
)
def test_messages_return_system_user_pair() -> None:
system, user = build_extraction_messages(_snapshot())
assert isinstance(system, str) and isinstance(user, str)
assert system and user
def test_system_describes_memories_and_entities_structure() -> None:
system, _ = build_extraction_messages(_snapshot())
for token in ("memories", "entities", "state_type", "sensitivity", "importance"):
assert token in system
def test_user_includes_snapshot_signals() -> None:
_, user = build_extraction_messages(_snapshot())
assert "用户偏好简洁" in user
assert "身份:魂镜" in user
assert "15" in user