Files
Video-Tree-TRM5/tests/integration/test_diagnosis_tree_link.py

32 lines
1.5 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""集成验证:真实树注入后 _get_ground_truth_for_trace 收到非空 ground_truthcore 不依赖 app。
这两个测试守护"诊断 tree_data 断链"修复:
- 真实树 → load_tree_nodes → _get_ground_truth_for_trace,证明 bug 之前恒空的环已接通。
- core/evolution/diagnose.py 不 import app,守护依赖方向(core 不依赖 app)与算法保真。
"""
from pathlib import Path
from app.harness.tree_nodes import load_tree_nodes
from core.evolution.diagnose import _get_ground_truth_for_trace
# store 根锚定到仓库根,避免测试运行目录漂移导致相对路径失效(与 Task 1 测试一致)。
_STORE_DIR = Path(__file__).resolve().parents[2] / "store"
def test_ground_truth_nonempty_with_real_tree():
"""对真实 T2 样本 604-2video 0RxMZBLeqRI)的 view_node 调用,ground_truth 非空。"""
tree_data = load_tree_nodes(_STORE_DIR, "0RxMZBLeqRI")
node_id = "0RxMZBLeqRI_L1_000" # 该视频真实存在的节点
ground_truth = _get_ground_truth_for_trace(tree_data, "view_node", {"node_id": node_id})
assert ground_truth and ground_truth != "{}" # 拿到该节点 card 的 JSON,非空
def test_core_diagnose_does_not_import_app():
"""算法保真 + 依赖方向:core/evolution/diagnose.py 不 import app。"""
src = (Path(__file__).resolve().parents[2] / "core" / "evolution" / "diagnose.py").read_text(
encoding="utf-8"
)
assert "import app." not in src
assert "from app." not in src