feat: add notion-corpus-loader test

This commit is contained in:
bingshuo 2026-05-23 13:54:58 +08:00
parent 8cdb029632
commit 43fdc5476f

View File

@ -0,0 +1,45 @@
#!/usr/bin/env python3
"""测试Notion原生格式解析器"""
import sys, os
sys.path.insert(0, os.path.dirname(__file__))
from src import NotionCorpusLoader, HLDPParser
def test_parser():
parser = HLDPParser()
sample = """# ⚔️ 铸渊思维模型
> HLDP://zhuyuan/brain-model/execution-laws
## 〇、存在前提
TCS = 语言场域 = 涌现土壤
D110凌晨新增的规律
起点推导终点
主权者冰朔TCS-0002
人格体铸渊ICE-GL-ZY001
CORPUS-ID: ZY-V2-004
"""
blocks = parser.parse_markdown(sample)
print(f"HLDP解析: {len(blocks)}")
assert any(b.path for b in blocks)
assert any(b.cognitive_jump for b in blocks)
print("✅ HLDP解析器通过")
def test_loader():
loader = NotionCorpusLoader()
page = {"page":{"id":"t1","title":"灯塔架构"},"blocks":[{"type":"code","content":"HLDP://lighthouse\n【核心认知跃迁】双面灯塔\n起点→推导→终点"}]}
item = loader.load_notion_api_page(page)
assert item.hldp_path and item.cognitive_jumps
print(f"✅ 加载器通过 (质量{item.quality_score})")
def test_collection():
from src.structure import CorpusCollection, StructuredCorpusItem
col = CorpusCollection()
for i in range(3):
item = StructuredCorpusItem(source_id=f"t{i}", persona="冰朔", raw_text="铸渊"*100)
item.cognitive_jumps.append(f"jump{i}"); item.quality_score = 0.8
col.add(item)
print(col.summary())
print("✅ 集合测试通过")
if __name__ == '__main__':
test_parser(); loader = NotionCorpusLoader()
test_loader(); test_collection()
print("\n🎉 全部通过")