Selaa lähdekoodia

next moon phase fix

Lukas Goldschmidt 1 kuukausi sitten
vanhempi
commit
9486691835
2 muutettua tiedostoa jossa 3 lisäystä ja 3 poistoa
  1. 2 2
      src/ephemeris_mcp/ephemeris.py
  2. 1 1
      tests/test_basic.py

+ 2 - 2
src/ephemeris_mcp/ephemeris.py

@@ -478,7 +478,7 @@ def _next_major_phase_from_jd(jd: float) -> dict:
     """
     current_angle = _moon_sun_elongation(jd)
     targets = (
-        ("New Moon", 360.0),
+        ("New Moon", 0.0),
         ("First Quarter", 90.0),
         ("Full Moon", 180.0),
         ("Last Quarter", 270.0),
@@ -490,7 +490,7 @@ def _next_major_phase_from_jd(jd: float) -> dict:
     for name, candidate_angle in targets:
         if candidate_angle > current_angle:
             next_name = name
-            target_angle = 0.0 if candidate_angle == 360.0 else candidate_angle
+            target_angle = candidate_angle
             delta_deg = candidate_angle - current_angle
             break
 

+ 1 - 1
tests/test_basic.py

@@ -106,7 +106,7 @@ def test_moon_phase_tool_shape() -> None:
     assert moon_phase["input"]["datetime"] == "2026-05-10T12:00:00Z"
     assert moon_phase["phase_name"] == "Last Quarter"
     assert moon_phase["next_major_phase"]["phase_name"] == "New Moon"
-    assert moon_phase["next_major_phase"]["at_utc"] == "2026-05-16T20:01:04Z"
+    assert moon_phase["next_major_phase"]["at_utc"] == "2026-05-16T20:01:03Z"
     assert moon_phase["next_major_phase"]["in_text"]
     assert "d" in moon_phase["next_major_phase"]["in_text"] or "h" in moon_phase["next_major_phase"]["in_text"] or "m" in moon_phase["next_major_phase"]["in_text"]