From 11b3a224c38fde2801d5d1db651fdf2ec76d534c Mon Sep 17 00:00:00 2001 From: Simon Kennedy Date: Tue, 11 Feb 2020 16:06:20 +0000 Subject: [PATCH] bug #44 - Fix for our antipodean friends. --- src/astral/sun.py | 3 --- src/test/test_wellington.py | 17 +++++++++++++++++ 2 files changed, 17 insertions(+), 3 deletions(-) create mode 100644 src/test/test_wellington.py diff --git a/src/astral/sun.py b/src/astral/sun.py index cee4440..ded32af 100644 --- a/src/astral/sun.py +++ b/src/astral/sun.py @@ -376,9 +376,6 @@ def time_of_transit( timeDiff = 4.0 * delta timeUTC = 720 + timeDiff - eq_of_time(t) - if timeUTC < 0: - raise ValueError(f"Sun never transits at a zenith of {zenith} on {date}") - td = minutes_to_timedelta(timeUTC) dt = datetime.datetime(date.year, date.month, date.day) + td dt = pytz.utc.localize(dt) # pylint: disable=E1120 diff --git a/src/test/test_wellington.py b/src/test/test_wellington.py new file mode 100644 index 0000000..1dab1b6 --- /dev/null +++ b/src/test/test_wellington.py @@ -0,0 +1,17 @@ +import datetime + +import pytz +from astral.geocoder import database, lookup +from astral.sun import sun + +from almost_equal import datetime_almost_equal + + +def test_Wellington(): + wellington = lookup("Wellington", database()) + dt = datetime.date(2020, 2, 11) + tz = pytz.timezone(wellington.timezone) + s = sun(wellington.observer, dt, tzinfo=tz) + assert datetime_almost_equal( + s["sunrise"], tz.localize(datetime.datetime(2020, 2, 11, 6, 38, 42)) + )