summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStuart Bishop <stuart.bishop@canonical.com>2020-04-28 17:44:45 +1000
committerStuart Bishop <stuart.bishop@canonical.com>2020-04-28 17:44:45 +1000
commit238b4f65aba1677ec5a8138183852a7f87243a54 (patch)
tree42b5fae7395425dc7a6b2951fd7dc44270d71247
parentfb8b146c058dafb9611a2dd9aa210d376d10a856 (diff)
downloadpytz-git-238b4f65aba1677ec5a8138183852a7f87243a54.tar.gz
Base class for all errors
Closes #43
-rw-r--r--src/pytz/exceptions.py15
-rw-r--r--src/pytz/tests/test_tzinfo.py1
2 files changed, 14 insertions, 2 deletions
diff --git a/src/pytz/exceptions.py b/src/pytz/exceptions.py
index 18df33e..4b20bde 100644
--- a/src/pytz/exceptions.py
+++ b/src/pytz/exceptions.py
@@ -8,7 +8,11 @@ __all__ = [
]
-class UnknownTimeZoneError(KeyError):
+class Error(Exception):
+ '''Base class for all exceptions raised by the pytz library'''
+
+
+class UnknownTimeZoneError(KeyError, Error):
'''Exception raised when pytz is passed an unknown timezone.
>>> isinstance(UnknownTimeZoneError(), LookupError)
@@ -20,11 +24,18 @@ class UnknownTimeZoneError(KeyError):
>>> isinstance(UnknownTimeZoneError(), KeyError)
True
+
+ And also a subclass of pytz.exceptions.Error, as are other pytz
+ exceptions.
+
+ >>> isinstance(UnknownTimeZoneError(), Error)
+ True
+
'''
pass
-class InvalidTimeError(Exception):
+class InvalidTimeError(Error):
'''Base class for invalid time exceptions.'''
diff --git a/src/pytz/tests/test_tzinfo.py b/src/pytz/tests/test_tzinfo.py
index 7d759af..35430e8 100644
--- a/src/pytz/tests/test_tzinfo.py
+++ b/src/pytz/tests/test_tzinfo.py
@@ -859,6 +859,7 @@ def test_suite():
suite = unittest.TestSuite()
suite.addTest(doctest.DocTestSuite('pytz'))
suite.addTest(doctest.DocTestSuite('pytz.tzinfo'))
+ suite.addTest(doctest.DocTestSuite('pytz.exceptions'))
import test_tzinfo
suite.addTest(unittest.defaultTestLoader.loadTestsFromModule(test_tzinfo))
return suite