Check more cases in android log tag PRESUBMIT
Relax a regex to catch Log.e("log message", ..) as a bad/missing TAG
instead of silently accepting it. Also add a rough TAG-change detection
regex to try and make changes that only touch a TAG also run the checks.
Adjust tests to match.
Bug: 1063573
Change-Id: I6a5c302d581aa76ebfc86a286e6048412641f4de
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2113572
Auto-Submit: Tomasz Śniatowski <[email protected]>
Commit-Queue: Andrew Grieve <[email protected]>
Reviewed-by: Andrew Grieve <[email protected]>
Cr-Commit-Position: refs/heads/master@{#752441}
diff --git a/PRESUBMIT_test.py b/PRESUBMIT_test.py
index 8d3ef19..d2a156f 100755
--- a/PRESUBMIT_test.py
+++ b/PRESUBMIT_test.py
@@ -1290,6 +1290,12 @@
'private static final String TAG = "cr_Foo";',
'Log.d("TAG", "foo");',
]),
+ MockAffectedFile('HasInlineTagWithSpace.java', [
+ 'import org.chromium.base.Log;',
+ 'some random stuff',
+ 'private static final String TAG = "cr_Foo";',
+ 'Log.d("log message", "foo");',
+ ]),
MockAffectedFile('HasUnprefixedTag.java', [
'import org.chromium.base.Log;',
'some random stuff',
@@ -1302,6 +1308,11 @@
'private static final String TAG = "21_charachers_long___";',
'Log.d(TAG, "foo");',
]),
+ MockAffectedFile('HasTooLongTagWithNoLogCallsInDiff.java', [
+ 'import org.chromium.base.Log;',
+ 'some random stuff',
+ 'private static final String TAG = "21_charachers_long___";',
+ ]),
]
msgs = PRESUBMIT._CheckAndroidCrLogUsage(
@@ -1319,21 +1330,25 @@
# Tag length
nb = len(msgs[1].items)
- self.assertEqual(1, nb,
- 'Expected %d items, found %d: %s' % (1, nb, msgs[1].items))
+ self.assertEqual(2, nb,
+ 'Expected %d items, found %d: %s' % (2, nb, msgs[1].items))
self.assertTrue('HasTooLongTag.java' in msgs[1].items)
+ self.assertTrue('HasTooLongTagWithNoLogCallsInDiff.java' in msgs[1].items)
# Tag must be a variable named TAG
nb = len(msgs[2].items)
- self.assertEqual(1, nb,
- 'Expected %d items, found %d: %s' % (1, nb, msgs[2].items))
+ self.assertEqual(3, nb,
+ 'Expected %d items, found %d: %s' % (3, nb, msgs[2].items))
+ self.assertTrue('HasBothLog.java:5' in msgs[2].items)
self.assertTrue('HasInlineTag.java:4' in msgs[2].items)
+ self.assertTrue('HasInlineTagWithSpace.java:4' in msgs[2].items)
# Util Log usage
nb = len(msgs[3].items)
- self.assertEqual(2, nb,
- 'Expected %d items, found %d: %s' % (2, nb, msgs[3].items))
+ self.assertEqual(3, nb,
+ 'Expected %d items, found %d: %s' % (3, nb, msgs[3].items))
self.assertTrue('HasAndroidLog.java:3' in msgs[3].items)
+ self.assertTrue('HasExplicitUtilLog.java:2' in msgs[3].items)
self.assertTrue('IsInBasePackageButImportsLog.java:4' in msgs[3].items)
# Tag must not contain