test(report): expect parenthesized karaka names in the full-data table

The Chinese full-data body prints karaka names with parentheses after the glued-phrase pass. The BPHS order test still expected the KARAKA_CN literals and failed the full pytest run. Expect translate_zh_glued_phrases of KARAKA_CN instead of editing KARAKA_CN.

Pytest of the karaka file, the six report contract files, and privacy markers: 154 passed. tsc exit 0. lint 0 errors, 125 warnings.

Co-Authored-By: Grok (agent loop)
This commit is contained in:
jesse-ux
2026-10-13 15:55:56 +08:00
co-authored by Grok (agent loop)
parent 7242648e45
commit 830e5d0267
3 changed files with 25 additions and 2 deletions
+7 -1
View File
@@ -62,6 +62,7 @@ def test_reader_report_karaka_table_is_in_bphs_order() -> None:
import copy
from scripts.jaimini import KARAKA_CN
from scripts.pl9_language_terms import translate_zh_glued_phrases
from scripts.pl9_reader_export import _pl9_export_markdown_for_edition
from tests.test_report_english_edition import CASES, _packet
@@ -70,4 +71,9 @@ def test_reader_report_karaka_table_is_in_bphs_order() -> None:
lines = markdown.splitlines()
start = next(i for i, line in enumerate(lines) if line.startswith("### Jaimini Karaka"))
rows = [line for line in lines[start + 1:start + 14] if line.startswith("| ") and "星" in line.split("|")[1]]
assert [row.split("|")[1].strip() for row in rows] == [KARAKA_CN[role] for role in BPHS_8]
# 原值:[KARAKA_CN[role] for role in BPHS_8](灵魂星AK、事业星AmK、兄弟星BK、母亲星MK、父亲星PiK、子女星PK、障碍星GK、配偶星DK)
# 新值:[translate_zh_glued_phrases(KARAKA_CN[role]) for role in BPHS_8](灵魂星(AK)、事业星(AmK)、兄弟星(BK)、母亲星(MK)、父亲星(PiK)、子女星(PK)、障碍星(GK)、配偶星(DK))
# 原因:完整数据版正文会给这八个星位名的缩写加括号,避免三字母缩写被粘连检查判中。KARAKA_CN 仍是原字面值,咨询和星盘页继续用它。
assert [row.split("|")[1].strip() for row in rows] == [
translate_zh_glued_phrases(KARAKA_CN[role]) for role in BPHS_8
]