"""Testy formatowania (czyste, bez efemeryd).""" from app.engine import formats def test_sign_index(): assert formats.sign_index(0) == 0 # Aries assert formats.sign_index(35) == 1 # Taurus assert formats.sign_index(359.9) == 11 # Pisces def test_in_sign_basic(): # 40°08'21" absolutnie = Taurus 10°08'21" assert formats.in_sign(40.139166) == "Tau 10°08'21\"" def test_absolute(): assert formats.absolute(40.139166) == "40°08'21\"" def test_wraparound_and_norm(): assert formats.norm360(370.0) == 10.0 assert formats.norm360(-1.0) == 359.0 def test_rounding_carry_into_next_sign(): # tuż przy granicy znaku zaokrąglenie nie może dać "30°" s = formats.in_sign(59.99999) assert s.startswith("Gem 0°") or s.startswith("Tau 29°59")