8010245981
Default ayanamsa to Raman with true_pushya support, attach governed Raman packets, restore Path C questionnaires and eight-method verification copy, and keep unique-minute confirmation blocked. Co-authored-by: Cursor <cursoragent@cursor.com>
73 lines
2.9 KiB
Python
73 lines
2.9 KiB
Python
import sys
|
|
import os
|
|
import unittest
|
|
|
|
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..', 'scripts')))
|
|
from jyotish_engine import compute_chart_data
|
|
|
|
class TestAyanamsaSwitching(unittest.TestCase):
|
|
def test_ayanamsa_differences(self):
|
|
# Neutral deterministic fixture; no personal birth data.
|
|
year, month, day = 1990, 4, 17
|
|
hour, minute, second = 14, 45, 20
|
|
lat, lon, tz = 37.7749, -122.4194, 8
|
|
|
|
# compute_chart_data always applies the named (or default Raman) mode.
|
|
# Global _apply_ayanamsa leftover state is not a silent Lahiri fallback.
|
|
chart_lahiri = compute_chart_data(
|
|
year, month, day, hour, minute, lat, lon, tz, second=second, ayanamsa_name='lahiri',
|
|
)
|
|
sun_lahiri = chart_lahiri[0]['planets']['Sun']['degree_raw']
|
|
|
|
chart_raman = compute_chart_data(
|
|
year, month, day, hour, minute, lat, lon, tz, second=second, ayanamsa_name='raman',
|
|
)
|
|
sun_raman = chart_raman[0]['planets']['Sun']['degree_raw']
|
|
|
|
chart_kp = compute_chart_data(
|
|
year, month, day, hour, minute, lat, lon, tz, second=second, ayanamsa_name='kp',
|
|
)
|
|
sun_kp = chart_kp[0]['planets']['Sun']['degree_raw']
|
|
|
|
# Assertions
|
|
self.assertNotEqual(sun_lahiri, sun_raman, "Lahiri and Raman longitudes must differ")
|
|
self.assertNotEqual(sun_lahiri, sun_kp, "Lahiri and KP longitudes must differ")
|
|
self.assertNotEqual(sun_raman, sun_kp, "Raman and KP longitudes must differ")
|
|
|
|
self.assertTrue(abs(sun_lahiri - sun_raman) > 0.5, "Difference should be significant")
|
|
|
|
def test_compute_chart_data_accepts_direct_ayanamsa_name(self):
|
|
year, month, day = 1990, 4, 17
|
|
hour, minute, second = 14, 45, 20
|
|
lat, lon, tz = 37.7749, -122.4194, 8
|
|
|
|
chart_lahiri = compute_chart_data(
|
|
year, month, day, hour, minute, lat, lon, tz,
|
|
second=second,
|
|
ayanamsa_name='lahiri',
|
|
)[0]
|
|
chart_raman = compute_chart_data(
|
|
year, month, day, hour, minute, lat, lon, tz,
|
|
second=second,
|
|
ayanamsa_name='raman',
|
|
)[0]
|
|
|
|
self.assertEqual(chart_raman['birth_info']['ayanamsa_name'], 'raman')
|
|
self.assertLess(chart_raman['birth_info']['ayanamsa'], chart_lahiri['birth_info']['ayanamsa'])
|
|
self.assertNotEqual(
|
|
chart_lahiri['planets']['Sun']['degree_raw'],
|
|
chart_raman['planets']['Sun']['degree_raw'],
|
|
)
|
|
|
|
chart_default = compute_chart_data(
|
|
year, month, day, hour, minute, lat, lon, tz, second=second,
|
|
)[0]
|
|
self.assertEqual(chart_default['birth_info']['ayanamsa_name'], 'raman')
|
|
self.assertEqual(
|
|
chart_default['planets']['Sun']['degree_raw'],
|
|
chart_raman['planets']['Sun']['degree_raw'],
|
|
)
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|