diff options
author | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2014-09-11 22:08:48 (GMT) |
---|---|---|
committer | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2014-09-11 22:08:48 (GMT) |
commit | a56411e5d4c91027c65780c8bdc81dd943cd9c87 (patch) | |
tree | 857772ad8ad05b6c02af990831bfe8b7d581fc9f | |
parent | ee6c3c7162dee452dc42d9a1001bf1a0a1e15f26 (diff) | |
parent | d1d4fbff6335cc638201a5d011b1c93d9d306b6b (diff) | |
download | cpython-a56411e5d4c91027c65780c8bdc81dd943cd9c87.zip cpython-a56411e5d4c91027c65780c8bdc81dd943cd9c87.tar.gz cpython-a56411e5d4c91027c65780c8bdc81dd943cd9c87.tar.bz2 |
Closes #22386: merged fix from 3.4.
-rw-r--r-- | Doc/library/logging.rst | 4 | ||||
-rw-r--r-- | Lib/logging/__init__.py | 3 | ||||
-rw-r--r-- | Lib/test/test_logging.py | 4 |
3 files changed, 8 insertions, 3 deletions
diff --git a/Doc/library/logging.rst b/Doc/library/logging.rst index a3e2770..9983711 100644 --- a/Doc/library/logging.rst +++ b/Doc/library/logging.rst @@ -1052,8 +1052,8 @@ functions. .. versionchanged:: 3.4 In Python versions earlier than 3.4, this function could also be passed a text level, and would return the corresponding numeric value of the level. - This undocumented behaviour was a mistake, and has been removed in Python - 3.4. + This undocumented behaviour was considered a mistake, and was removed in + Python 3.4, but reinstated in 3.4.2 due to retain backward compatibility. .. function:: makeLogRecord(attrdict) diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py index a61c2b0..7fb3a35 100644 --- a/Lib/logging/__init__.py +++ b/Lib/logging/__init__.py @@ -129,7 +129,8 @@ def getLevelName(level): Otherwise, the string "Level %s" % level is returned. """ - return _levelToName.get(level, ("Level %s" % level)) + # See Issue #22386 for the reason for this convoluted expression + return _levelToName.get(level, _nameToLevel.get(level, ("Level %s" % level))) def addLevelName(level, levelName): """ diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py index 52412d1..070e636 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -307,6 +307,10 @@ class BuiltinLevelsTest(BaseTest): ('INF.BADPARENT', 'INFO', '4'), ]) + def test_regression_22386(self): + """See issue #22386 for more information.""" + self.assertEqual(logging.getLevelName('INFO'), logging.INFO) + self.assertEqual(logging.getLevelName(logging.INFO), 'INFO') class BasicFilterTest(BaseTest): |