| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 0857d33 commit c6e0a6c
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -121,8 +121,11 @@ def dst(self, dt): | |||
| 121 | 121 | def from_timestamp(timestamp, tz_offset): | |
| 122 | 122 | """Converts a timestamp + tz_offset into an aware datetime instance.""" | |
| 123 | 123 | utc_dt = datetime.fromtimestamp(timestamp, utc) | |
| 124 | - local_dt = utc_dt.astimezone(tzoffset(tz_offset)) | ||
| 125 | - return local_dt | ||
| 124 | + try: | ||
| 125 | + local_dt = utc_dt.astimezone(tzoffset(tz_offset)) | ||
| 126 | + return local_dt | ||
| 127 | + except ValueError: | ||
| 128 | + return utc_dt | ||
| 126 | 129 | ||
| 127 | 130 | ||
| 128 | 131 | def parse_date(string_date): | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -7,7 +7,7 @@ | |||
| 7 | 7 | import tempfile | |
| 8 | 8 | import time | |
| 9 | 9 | from unittest import skipIf | |
| 10 | - | ||
| 10 | + from datetime import datetime | ||
| 11 | 11 | ||
| 12 | 12 | import ddt | |
| 13 | 13 | ||
@@ -18,7 +18,8 @@ | |||
| 18 | 18 | utctz_to_altz, | |
| 19 | 19 | verify_utctz, | |
| 20 | 20 | parse_date, | |
| 21 | - ) | ||
| 21 | + tzoffset, | ||
| 22 | + from_timestamp) | ||
| 22 | 23 | from git.test.lib import ( | |
| 23 | 24 | TestBase, | |
| 24 | 25 | assert_equal | |
@@ -260,3 +261,16 @@ def test_iterable_list(self, case): | |||
| 260 | 261 | ||
| 261 | 262 | self.failUnlessRaises(IndexError, ilist.__delitem__, 0) | |
| 262 | 263 | self.failUnlessRaises(IndexError, ilist.__delitem__, 'something') | |
| 264 | + | ||
| 265 | + def test_from_timestamp(self): | ||
| 266 | + # Correct offset: UTC+2, should return datetime + tzoffset(+2) | ||
| 267 | + altz = utctz_to_altz('+0200') | ||
| 268 | + self.assertEqual(datetime.fromtimestamp(1522827734, tzoffset(altz)), from_timestamp(1522827734, altz)) | ||
| 269 | + | ||
| 270 | + # Wrong offset: UTC+58, should return datetime + tzoffset(UTC) | ||
| 271 | + altz = utctz_to_altz('+5800') | ||
| 272 | + self.assertEqual(datetime.fromtimestamp(1522827734, tzoffset(0)), from_timestamp(1522827734, altz)) | ||
| 273 | + | ||
| 274 | + # Wrong offset: UTC-9000, should return datetime + tzoffset(UTC) | ||
| 275 | + altz = utctz_to_altz('-9000') | ||
| 276 | + self.assertEqual(datetime.fromtimestamp(1522827734, tzoffset(0)), from_timestamp(1522827734, altz)) | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments