diff options
author | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2017-01-11 17:41:28 (GMT) |
---|---|---|
committer | Vinay Sajip <vinay_sajip@yahoo.co.uk> | 2017-01-11 17:41:28 (GMT) |
commit | a861d48817e2477cd0b5189787d071ff01dbe4f7 (patch) | |
tree | 89456854592b24448c412518c399a0f9f3bc666d /Lib | |
parent | ced4b90756e58a8ad99f64fb2c7a3e83f49cf017 (diff) | |
parent | 924aaae4c2a99015ca6b448f16eed31bbb598b98 (diff) | |
download | cpython-a861d48817e2477cd0b5189787d071ff01dbe4f7.zip cpython-a861d48817e2477cd0b5189787d071ff01dbe4f7.tar.gz cpython-a861d48817e2477cd0b5189787d071ff01dbe4f7.tar.bz2 |
Issue #292Merged fixes from 3.5.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/logging/__init__.py | 11 | ||||
-rw-r--r-- | Lib/test/test_logging.py | 8 |
2 files changed, 16 insertions, 3 deletions
diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py index 2590d65..b44a3b2 100644 --- a/Lib/logging/__init__.py +++ b/Lib/logging/__init__.py @@ -131,9 +131,14 @@ def getLevelName(level): Otherwise, the string "Level %s" % level is returned. """ - # See Issues #22386 and #27937 for why it's this way - return (_levelToName.get(level) or _nameToLevel.get(level) or - "Level %s" % level) + # See Issues #22386, #27937 and #29220 for why it's this way + result = _levelToName.get(level) + if result is not None: + return result + result = _nameToLevel.get(level) + if result is not None: + return result + return "Level %s" % level def addLevelName(level, levelName): """ diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py index 079f584..9dedc09 100644 --- a/Lib/test/test_logging.py +++ b/Lib/test/test_logging.py @@ -313,6 +313,14 @@ class BuiltinLevelsTest(BaseTest): fatal = logging.getLevelName('FATAL') self.assertEqual(fatal, logging.FATAL) + def test_regression_29220(self): + """See issue #29220 for more information.""" + logging.addLevelName(logging.INFO, '') + self.addCleanup(logging.addLevelName, logging.INFO, 'INFO') + self.assertEqual(logging.getLevelName(logging.INFO), '') + self.assertEqual(logging.getLevelName(logging.NOTSET), 'NOTSET') + self.assertEqual(logging.getLevelName('NOTSET'), logging.NOTSET) + class BasicFilterTest(BaseTest): """Test the bundled Filter class.""" |