Files
Jyotisha/tests/test_vp_jain_shadbala_benchmark.py
T
Jesse_ChenandClaude Opus 5.5 0176cb3008 test: three-column updates for the ported transit and Shadbala fixes (BUG-1185, BUG-1188)
- tests/fixtures/double_transit_d1_cl_golden.json recaptured with the test's
  own --capture (PYTHONHASHSEED=0, chart cache TTL 0): 413 of 578 leaf entries
  and all 36 chart-house stats rows move (double-transit overlaps: D1 0 -> 15, CL 0 -> 6) because aspects are now counted
  from 1 (42d1582f).
- V.P. Jain benchmark: within tolerance 34 -> 36, variants 8 -> 6; Chesta
  Mars/Jupiter/Saturn now match the published values, Venus no longer does
  (08376cf0). Original / new / reason recorded in the test.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-02 14:09:39 +08:00

43 lines
2.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from scripts.vp_jain_shadbala_benchmark import build_report
def test_vp_jain_published_component_benchmark_is_fully_classified() -> None:
report = build_report()
assert report["case"]["name"] == "VP Jain-attributed Shadbala fixture"
assert report["source"] == {
"upstream": "PyJHora V4.8.7 pvr_tests.py::shadbala_VPJainBook_tests",
"upstream_commit": "ca22995709bd60e371e7820a1a5efc80ce4cf821",
"upstream_url": "https://github.com/naturalstupid/PyJHora/blob/ca22995709bd60e371e7820a1a5efc80ce4cf821/src/jhora/tests/pvr_tests.py#L6853",
"upstream_issue": None,
"license_boundary": "AGPL-3.0 process-isolated numeric expectations only; no implementation copied.",
"truth_status": "candidate_attributed_fixture_replay_not_independent_arbitration",
}
assert report["summary"]["row_count"] == 42
assert report["summary"]["classified_count"] == 42
# 原值: within_tolerance 34 / method_variant 8
# 新值: within_tolerance 36 / method_variant 6
# 原因: TASK-upstream-sync4-20261002 T3(上游 0afa2780)平运动连续计时、短弧中点后,
# Chesta 火星 19.25→21.08、木星 11.23→8.86、土星 6.78→4.34 进入 ±1 Virupa;
# 金星 27.23→30.03 离开(公布值 28.18);水星 18.08→27.14 仍差 1.62。
assert report["summary"]["within_tolerance_count"] == 36
assert report["summary"]["method_variant_count"] == 6
def test_vp_jain_benchmark_keeps_known_method_variants_explicit() -> None:
rows = build_report()["rows"]
variants = {(row["component"], row["planet"]): row for row in rows if row["status"] != "within_tolerance"}
assert set(variants) == {
("sthana", "Sun"),
("sthana", "Mercury"),
("chesta", "Sun"),
("chesta", "Moon"),
("chesta", "Mercury"),
("chesta", "Venus"),
}
# 原值: chesta 非匹配集 {Sun, Moon, Mars, Mercury, Jupiter, Saturn}
# 新值: {Sun, Moon, Mercury, Venus}(原因同上:T3 Chesta 修正后火/木/土落入容差、金星跳出)
assert variants[("sthana", "Sun")]["variant"] == "moolatrikona_degree_range_vs_whole_sign"
assert variants[("chesta", "Moon")]["variant"] == "luminary_chesta_policy"