diff options
| author | Alexander Belopolsky <alexander.belopolsky@gmail.com> | 2010-05-27 20:55:27 (GMT) | 
|---|---|---|
| committer | Alexander Belopolsky <alexander.belopolsky@gmail.com> | 2010-05-27 20:55:27 (GMT) | 
| commit | 9292ee06672e88172f6d2724eecbfd95bb69cc24 (patch) | |
| tree | d5f24812db3c8aba7563c2919f0fc419332cae93 /Lib/test/test_datetime.py | |
| parent | 3bfd0311f9cbea2e0b919689dd6076a1ade8120f (diff) | |
| download | cpython-9292ee06672e88172f6d2724eecbfd95bb69cc24.zip cpython-9292ee06672e88172f6d2724eecbfd95bb69cc24.tar.gz cpython-9292ee06672e88172f6d2724eecbfd95bb69cc24.tar.bz2  | |
Issue #7150: Raise OverflowError if the result of adding or subtracting
timedelta from date or datetime falls outside of the MINYEAR:MAXYEAR range.
Diffstat (limited to 'Lib/test/test_datetime.py')
| -rw-r--r-- | Lib/test/test_datetime.py | 19 | 
1 files changed, 10 insertions, 9 deletions
diff --git a/Lib/test/test_datetime.py b/Lib/test/test_datetime.py index 671c259..905f7ef 100644 --- a/Lib/test/test_datetime.py +++ b/Lib/test/test_datetime.py @@ -720,15 +720,16 @@ class TestDate(HarmlessMixedComparison, unittest.TestCase):      def test_overflow(self):          tiny = self.theclass.resolution -        dt = self.theclass.min + tiny -        dt -= tiny  # no problem -        self.assertRaises(OverflowError, dt.__sub__, tiny) -        self.assertRaises(OverflowError, dt.__add__, -tiny) - -        dt = self.theclass.max - tiny -        dt += tiny  # no problem -        self.assertRaises(OverflowError, dt.__add__, tiny) -        self.assertRaises(OverflowError, dt.__sub__, -tiny) +        for delta in [tiny, timedelta(1), timedelta(2)]: +            dt = self.theclass.min + delta +            dt -= delta  # no problem +            self.assertRaises(OverflowError, dt.__sub__, delta) +            self.assertRaises(OverflowError, dt.__add__, -delta) + +            dt = self.theclass.max - delta +            dt += delta  # no problem +            self.assertRaises(OverflowError, dt.__add__, delta) +            self.assertRaises(OverflowError, dt.__sub__, -delta)      def test_fromtimestamp(self):          import time  | 
