完成和大模型的通信
This commit is contained in:
42
tests/test_analysis_prompt.py
Normal file
42
tests/test_analysis_prompt.py
Normal file
@@ -0,0 +1,42 @@
|
||||
"""分析提示构建函数测试。"""
|
||||
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
sys.path.insert(0, str(Path(__file__).parent.parent / "src"))
|
||||
|
||||
from prompt import build_analysis_prompt
|
||||
|
||||
|
||||
class TestBuildAnalysisPrompt:
|
||||
"""测试分析提示构建函数。"""
|
||||
|
||||
def test_basic_prompt(self) -> None:
|
||||
"""测试基础提示词包含核心结构。"""
|
||||
prompt = build_analysis_prompt(purpose="", index="")
|
||||
assert "专业研究分析师" in prompt
|
||||
assert "关键实体" in prompt
|
||||
|
||||
def test_with_purpose(self) -> None:
|
||||
"""测试传入目的时,提示词包含 Wiki 目的部分。"""
|
||||
prompt = build_analysis_prompt(purpose="测试目的", index="")
|
||||
assert "Wiki 目的" in prompt
|
||||
assert "测试目的" in prompt
|
||||
|
||||
def test_with_index(self) -> None:
|
||||
"""测试传入索引时,提示词包含 Wiki 索引部分。"""
|
||||
prompt = build_analysis_prompt(purpose="", index="测试索引")
|
||||
assert "当前 Wiki 索引" in prompt
|
||||
assert "测试索引" in prompt
|
||||
|
||||
def test_empty_content(self) -> None:
|
||||
"""测试空内容时,可选部分不出现在提示词中。"""
|
||||
prompt = build_analysis_prompt(purpose="", index="")
|
||||
assert "Wiki 目的" not in prompt
|
||||
assert "当前 Wiki 索引" not in prompt
|
||||
|
||||
def test_language_from_config(self) -> None:
|
||||
"""测试语言设置从配置文件读取。"""
|
||||
prompt = build_analysis_prompt(purpose="", index="", configured_language=None)
|
||||
assert "使用" in prompt
|
||||
assert "语言输出分析报告" in prompt
|
||||
Reference in New Issue
Block a user