feat(regulatory): 对齐附件4目录核查规则
This commit is contained in:
@@ -6,6 +6,7 @@ from review_agent.regulatory_review.services.rag_citation import (
|
||||
)
|
||||
from review_agent.regulatory_review.services.rag_embedding import SiliconFlowEmbeddingProvider
|
||||
from review_agent.regulatory_review.services.rag_index import chunk_text
|
||||
from review_agent.regulatory_review.services.rag_index import collect_source_chunks
|
||||
|
||||
|
||||
def test_siliconflow_embedding_provider_posts_expected_payload(monkeypatch):
|
||||
@@ -70,3 +71,18 @@ def test_retrieve_citations_raises_when_index_missing(settings, tmp_path):
|
||||
|
||||
with pytest.raises(RagIndexUnavailable):
|
||||
retrieve_citations("注册检验报告", embedding_provider=lambda texts: [[0.1]])
|
||||
|
||||
|
||||
def test_collect_source_chunks_requires_attachment4_extraction(monkeypatch, tmp_path):
|
||||
source_dir = tmp_path / "sources"
|
||||
source_dir.mkdir()
|
||||
attachment4 = source_dir / "附件 4 体外诊断试剂注册申报资料要求及说明.doc"
|
||||
attachment4.write_bytes(b"legacy-doc")
|
||||
|
||||
def fail_extract(path):
|
||||
raise RuntimeError("无法通过 LibreOffice 转换法规 .doc 材料")
|
||||
|
||||
monkeypatch.setattr("review_agent.regulatory_review.services.rag_index.extract_text_from_path", fail_extract)
|
||||
|
||||
with pytest.raises(RuntimeError, match="附件 4"):
|
||||
collect_source_chunks(source_dir)
|
||||
|
||||
Reference in New Issue
Block a user