]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
#9361: add some tests for calendar.leapdays
authorR. David Murray <rdmurray@bitdance.com>
Fri, 31 Dec 2010 19:21:14 +0000 (19:21 +0000)
committerR. David Murray <rdmurray@bitdance.com>
Fri, 31 Dec 2010 19:21:14 +0000 (19:21 +0000)
Patch by John Chandler.

Lib/test/test_calendar.py

index 8d7f1854fea6a2bcc6310cdb01d5acb19ded1afe..4bd758b641e68395993d50e616b7db821aa80933 100644 (file)
@@ -430,6 +430,26 @@ class MonthRangeTestCase(unittest.TestCase):
         with self.assertRaises(calendar.IllegalMonthError):
             calendar.monthrange(2004, 13)
 
+class LeapdaysTestCase(unittest.TestCase):
+    def test_no_range(self):
+        # test when no range i.e. two identical years as args
+        self.assertEqual(calendar.leapdays(2010,2010), 0)
+
+    def test_no_leapdays(self):
+        # test when no leap years in range
+        self.assertEqual(calendar.leapdays(2010,2011), 0)
+
+    def test_no_leapdays_upper_boundary(self):
+        # test no leap years in range, when upper boundary is a leap year
+        self.assertEqual(calendar.leapdays(2010,2012), 0)
+
+    def test_one_leapday_lower_boundary(self):
+        # test when one leap year in range, lower boundary is leap year
+        self.assertEqual(calendar.leapdays(2012,2013), 1)
+
+    def test_several_leapyears_in_range(self):
+        self.assertEqual(calendar.leapdays(1997,2020), 5)
+
 
 def test_main():
     support.run_unittest(
@@ -439,6 +459,7 @@ def test_main():
         SundayTestCase,
         TimegmTestCase,
         MonthRangeTestCase,
+        LeapdaysTestCase,
     )