Skip to content

Commit 9fa9a83

Browse files
committed
Fixes utcoffset() for fixed timezones
1 parent 4c1a6c6 commit 9fa9a83

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

pendulum/tz/timezone.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -495,7 +495,7 @@ def utcoffset(self, dt):
495495
if dt is None:
496496
return None
497497

498-
return self._tzinfo.utcoffset(dt)
498+
return self._tzinfo.adjusted_offset
499499

500500
def dst(self, dt):
501501
if dt is None:

tests/tz_tests/test_timezone.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33
import pendulum
44
from datetime import datetime, timedelta
55
from pendulum import timezone
6-
from pendulum.tz import Timezone
7-
from pendulum.tz.timezone_info import TimezoneInfo
6+
from pendulum.tz import Timezone, FixedTimezone
87
from pendulum.tz.exceptions import NonExistingTime, AmbiguousTime
98

109
from .. import AbstractTestCase
@@ -304,3 +303,11 @@ def test_datetime(self):
304303
self.assertEqual(30, dt.minute)
305304
self.assertEqual(0, dt.second)
306305
self.assertEqual(0, dt.microsecond)
306+
307+
def test_fixed_timezone(self):
308+
tz = FixedTimezone.load(19800)
309+
tz2 = FixedTimezone.load(18000)
310+
dt = datetime(2016, 11, 26, tzinfo=tz)
311+
312+
self.assertEqual(tz2.utcoffset(dt).total_seconds(), 18000)
313+
self.assertIsNone(tz2.dst(dt))

0 commit comments

Comments
 (0)