@@ -21,7 +21,7 @@ |
|
|
21 |
21 |
# Max year is only limited by the size of C int. |
22 |
22 |
SIZEOF_INT = sysconfig.get_config_var('SIZEOF_INT') or 4 |
23 |
23 |
TIME_MAXYEAR = (1 << 8 * SIZEOF_INT - 1) - 1 |
24 |
|
-TIME_MINYEAR = -TIME_MAXYEAR - 1 |
|
24 |
+TIME_MINYEAR = -TIME_MAXYEAR - 1 + 1900 |
25 |
25 |
|
26 |
26 |
SEC_TO_US = 10 ** 6 |
27 |
27 |
US_TO_NS = 10 ** 3 |
@@ -614,12 +614,11 @@ def test_negative(self): |
|
|
614 |
614 |
self.assertEqual(self.yearstr(-123456), '-123456') |
615 |
615 |
self.assertEqual(self.yearstr(-123456789), str(-123456789)) |
616 |
616 |
self.assertEqual(self.yearstr(-1234567890), str(-1234567890)) |
617 |
|
-self.assertEqual(self.yearstr(TIME_MINYEAR + 1900), str(TIME_MINYEAR + 1900)) |
618 |
|
-# Issue #13312: it may return wrong value for year < TIME_MINYEAR + 1900 |
619 |
|
-# Skip the value test, but check that no error is raised |
620 |
|
-self.yearstr(TIME_MINYEAR) |
621 |
|
-# self.assertEqual(self.yearstr(TIME_MINYEAR), str(TIME_MINYEAR)) |
|
617 |
+self.assertEqual(self.yearstr(TIME_MINYEAR), str(TIME_MINYEAR)) |
|
618 |
+# Modules/timemodule.c checks for underflow |
622 |
619 |
self.assertRaises(OverflowError, self.yearstr, TIME_MINYEAR - 1) |
|
620 |
+with self.assertRaises(OverflowError): |
|
621 |
+self.yearstr(-TIME_MAXYEAR - 1) |
623 |
622 |
|
624 |
623 |
|
625 |
624 |
class TestAsctime4dyear(_TestAsctimeYear, _Test4dYear, unittest.TestCase): |