Disallow log hints in LOG.debug

Currently LOG.debug(_(...)) is disallowed but not LOG.debug(_Lx(...)).
This change disallows all log hints in LOG.debug calls.

Change-Id: I9758ad4ca9f7e8534abf38f5064b01b0c353e904
Partial-bug: #1320867
This commit is contained in:
Cedric Brandily 2014-12-08 15:23:47 +00:00
parent e264f14c79
commit 61b7e6ec57
2 changed files with 11 additions and 3 deletions

View File

@ -147,7 +147,7 @@ def no_author_tags(physical_line):
def no_translate_debug_logs(logical_line, filename): def no_translate_debug_logs(logical_line, filename):
"""Check for 'LOG.debug(_(' """Check for 'LOG.debug(_(' and 'LOG.debug(_Lx('
As per our translation policy, As per our translation policy,
https://wiki.openstack.org/wiki/LoggingStandards#Log_Translation https://wiki.openstack.org/wiki/LoggingStandards#Log_Translation
@ -157,8 +157,9 @@ def no_translate_debug_logs(logical_line, filename):
N319 N319
""" """
if _directory_to_check_translation(filename): if _directory_to_check_translation(filename):
if logical_line.startswith("LOG.debug(_("): for hint in _all_hints:
yield(0, "N319 Don't translate debug level logs") if logical_line.startswith("LOG.debug(%s(" % hint):
yield(0, "N319 Don't translate debug level logs")
def check_assert_called_once_with(logical_line, filename): def check_assert_called_once_with(logical_line, filename):

View File

@ -59,6 +59,13 @@ class HackingTestCase(base.BaseTestCase):
stmt, stmt,
filename)))) filename))))
def test_no_translate_debug_logs(self):
filename = 'neutron/agent/f'
for hint in checks._all_hints:
bad = "LOG.debug(%s('bad'))" % hint
self.assertEqual(
1, len(list(checks.no_translate_debug_logs(bad, filename))))
def test_use_jsonutils(self): def test_use_jsonutils(self):
def __get_msg(fun): def __get_msg(fun):
msg = ("N321: jsonutils.%(fun)s must be used instead of " msg = ("N321: jsonutils.%(fun)s must be used instead of "