Files
2026Technology-Competition/tests/test_real_samples.py
T

39 lines
1.1 KiB
Python

from pathlib import Path
import pytest
from genesis.parsers.excel_parser import ExcelParser
SAMPLES = Path(__file__).resolve().parents[1] / "samples"
def _x(name: str) -> Path:
return SAMPLES / name
def test_new_dev_sample_has_tables():
p = _x("要件定義_新規開発.xlsx")
if not p.exists():
pytest.skip("样本缺失")
result = ExcelParser().parse(p)
by_name = {t.name: t for t in result.tables}
assert "機能一覧" in by_name
assert by_name["機能一覧"].rows
assert any(t.name == "DB定義" for t in result.tables)
def test_additional_modification_has_tables():
p = _x("要件定義_追加改修.xlsx")
if not p.exists():
pytest.skip("样本缺失")
result = ExcelParser().parse(p)
assert result.tables
assert any(t.rows for t in result.tables)
def test_free_text_sample_detected():
p = _x("要件定義_自由記述.xlsx")
if not p.exists():
pytest.skip("样本缺失")
result = ExcelParser().parse(p)
assert any(t.extraction_method == "llm_from_free_text" for t in result.tables)