feat: Sheet 性质判定(table/free_text/mixed)

This commit is contained in:
lhl
2026-08-08 22:54:30 +08:00
parent 66753e425d
commit 4f61d24420
2 changed files with 66 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
from genesis.parsers.sheet_nature import SheetNature, classify_sheet, find_header_row
def test_table_detection():
m = [["機能ID", "機能名"], ["A001", "社員登録"], ["A002", "退職処理"]]
assert classify_sheet(m) == SheetNature.TABLE
def test_free_text_single_col():
m = [["新入社員を登録できる。"], ["氏名・所属・入社日を入力する。"]]
assert classify_sheet(m) == SheetNature.FREE_TEXT
def test_free_text_many_empty_rows():
m = [["要求A"], [], [], [], ["要求B"]]
assert classify_sheet(m) == SheetNature.FREE_TEXT
def test_header_row_index():
m = [["機能ID", "名前"], ["1", "田中"]]
assert find_header_row(m) == 0
assert find_header_row([["自由テキスト"]]) == -1