diff --git a/pendulum/tz/timezone.py b/pendulum/tz/timezone.py index d4fd9976..5ad1e53a 100644 --- a/pendulum/tz/timezone.py +++ b/pendulum/tz/timezone.py @@ -280,7 +280,7 @@ def utcoffset(self, dt): elif dt.tzinfo.tz is not self: dt = self.convert(dt) - return dt.adjusted_offset + return dt.tzinfo.adjusted_offset return dt.utcoffset(dt) diff --git a/tests/tz_tests/test_timezone.py b/tests/tz_tests/test_timezone.py index 71d5aede..3169806f 100644 --- a/tests/tz_tests/test_timezone.py +++ b/tests/tz_tests/test_timezone.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- import pendulum -from datetime import datetime +from datetime import datetime, timedelta from pendulum import timezone from pendulum.tz.exceptions import NonExistingTime, AmbiguousTime @@ -146,3 +146,8 @@ def test_create_uses_transition_rule(self): self.assertEqual('Europe/Paris', dt.timezone_name) self.assertEqual(3600, dt.offset) self.assertFalse(dt.is_dst) + + def test_utcoffset(self): + tz = pendulum.timezone('Europe/Paris') + utcoffset = tz.utcoffset(pendulum.utcnow()) + self.assertEqual(utcoffset, timedelta(0, 3600))