Skip to content

Commit a861d48

Browse files
committed
Issue #292Merged fixes from 3.5.
2 parents ced4b90 + 924aaae commit a861d48

File tree

2 files changed

+16
-3
lines changed

2 files changed

+16
-3
lines changed

Lib/logging/__init__.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -131,9 +131,14 @@ def getLevelName(level):
131131
132132
Otherwise, the string "Level %s" % level is returned.
133133
"""
134-
# See Issues #22386 and #27937 for why it's this way
135-
return (_levelToName.get(level) or _nameToLevel.get(level) or
136-
"Level %s" % level)
134+
# See Issues #22386, #27937 and #29220 for why it's this way
135+
result = _levelToName.get(level)
136+
if result is not None:
137+
return result
138+
result = _nameToLevel.get(level)
139+
if result is not None:
140+
return result
141+
return "Level %s" % level
137142

138143
def addLevelName(level, levelName):
139144
"""

Lib/test/test_logging.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,14 @@ def test_issue27935(self):
313313
fatal = logging.getLevelName('FATAL')
314314
self.assertEqual(fatal, logging.FATAL)
315315

316+
def test_regression_29220(self):
317+
"""See issue #29220 for more information."""
318+
logging.addLevelName(logging.INFO, '')
319+
self.addCleanup(logging.addLevelName, logging.INFO, 'INFO')
320+
self.assertEqual(logging.getLevelName(logging.INFO), '')
321+
self.assertEqual(logging.getLevelName(logging.NOTSET), 'NOTSET')
322+
self.assertEqual(logging.getLevelName('NOTSET'), logging.NOTSET)
323+
316324
class BasicFilterTest(BaseTest):
317325

318326
"""Test the bundled Filter class."""

0 commit comments

Comments
 (0)