mirror of
https://github.com/python/cpython.git
synced 2026-05-06 04:37:33 -04:00
gh-148663: Document that calendar.IllegalMonthError inherits from both ValueError and IndexError (#148664)
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> Co-authored-by: Stan Ulbrych <stan@python.org>
This commit is contained in:
@@ -580,9 +580,14 @@ The :mod:`!calendar` module defines the following exceptions:
|
||||
|
||||
.. exception:: IllegalMonthError(month)
|
||||
|
||||
A subclass of :exc:`ValueError`,
|
||||
A subclass of :exc:`ValueError` and :exc:`IndexError`,
|
||||
raised when the given month number is outside of the range 1-12 (inclusive).
|
||||
|
||||
.. versionchanged:: 3.12
|
||||
:exc:`IllegalMonthError` is now also a subclass of
|
||||
:exc:`ValueError`. New code should avoid catching
|
||||
:exc:`IndexError`.
|
||||
|
||||
.. attribute:: month
|
||||
|
||||
The invalid month number.
|
||||
|
||||
@@ -495,12 +495,17 @@ class OutputTestCase(unittest.TestCase):
|
||||
calendar.TextCalendar().formatmonth(0, 2),
|
||||
result_0_02_text
|
||||
)
|
||||
|
||||
def test_formatmonth_with_invalid_month(self):
|
||||
with self.assertRaises(calendar.IllegalMonthError):
|
||||
calendar.TextCalendar().formatmonth(2017, 13)
|
||||
with self.assertRaises(calendar.IllegalMonthError):
|
||||
calendar.TextCalendar().formatmonth(2017, -1)
|
||||
|
||||
def test_illegal_month_error_bases(self):
|
||||
self.assertIsSubclass(calendar.IllegalMonthError, ValueError)
|
||||
self.assertIsSubclass(calendar.IllegalMonthError, IndexError)
|
||||
|
||||
def test_formatmonthname_with_year(self):
|
||||
self.assertEqual(
|
||||
calendar.HTMLCalendar().formatmonthname(2004, 1, withyear=True),
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
Document that :class:`calendar.IllegalMonthError` is a subclass of both
|
||||
:exc:`ValueError` and :exc:`IndexError` since Python 3.12.
|
||||
Reference in New Issue
Block a user