diff options
author | Claudiu Popa <pcmanticore@gmail.com> | 2015-10-26 15:57:03 +0000 |
---|---|---|
committer | Claudiu Popa <pcmanticore@gmail.com> | 2015-10-26 15:57:03 +0000 |
commit | 23ce091db69414000823511ed8cd3e6c298e3550 (patch) | |
tree | df1fde8dc485bd61c6cd81d34a44a26f93c40196 | |
parent | 9af681ac214be79d6cbedd7bcf68f24c6cd27d99 (diff) | |
download | pylint-23ce091db69414000823511ed8cd3e6c298e3550.tar.gz |
Don't emit misplaced-comparison-constant for constant tests, such as true == true, which should be handled by other checks.
-rw-r--r-- | pylint/checkers/base.py | 7 | ||||
-rw-r--r-- | pylint/test/functional/misplaced_comparison_constant.py | 4 | ||||
-rw-r--r-- | pylint/test/functional/misplaced_comparison_constant.txt | 10 |
3 files changed, 6 insertions, 15 deletions
diff --git a/pylint/checkers/base.py b/pylint/checkers/base.py index 25f2c8b..a526dda 100644 --- a/pylint/checkers/base.py +++ b/pylint/checkers/base.py @@ -1490,15 +1490,12 @@ class ComparisonChecker(_BasicChecker): args=(None, "'expr is None'")) def _check_misplaced_constant(self, node, left, right, operator): - suggestion = None - if isinstance(right, (astroid.Name, astroid.Attribute, astroid.Call)): + if not isinstance(right, astroid.Const): reverse_op = {'<': '>', '<=': '>=', '>': '<', '>=': '<='} if operator in reverse_op: operator = reverse_op[operator] + suggestion = '%s %s %s' % (right.as_string(), operator, left.value) - elif isinstance(right, astroid.Const): - suggestion = 'between a variable and a constant' - if suggestion: self.add_message('misplaced-comparison-constant', node=node, args=(suggestion,)) diff --git a/pylint/test/functional/misplaced_comparison_constant.py b/pylint/test/functional/misplaced_comparison_constant.py index 49fffa9..50416a5 100644 --- a/pylint/test/functional/misplaced_comparison_constant.py +++ b/pylint/test/functional/misplaced_comparison_constant.py @@ -18,10 +18,6 @@ def bad_comparisons(): for i in range(10): if 5 <= i: # [misplaced-comparison-constant] pass - if True == True: # [misplaced-comparison-constant] - pass - if 'bar' != 'foo': # [misplaced-comparison-constant] - pass if 1 == i: # [misplaced-comparison-constant] pass if 3 < dummy_return(): # [misplaced-comparison-constant] diff --git a/pylint/test/functional/misplaced_comparison_constant.txt b/pylint/test/functional/misplaced_comparison_constant.txt index 2e63dce..8933f74 100644 --- a/pylint/test/functional/misplaced_comparison_constant.txt +++ b/pylint/test/functional/misplaced_comparison_constant.txt @@ -1,7 +1,5 @@ misplaced-comparison-constant:19:bad_comparisons:Comparison should be i >= 5 -misplaced-comparison-constant:21:bad_comparisons:Comparison should be between a variable and a constant -misplaced-comparison-constant:23:bad_comparisons:Comparison should be between a variable and a constant -misplaced-comparison-constant:25:bad_comparisons:Comparison should be i == 1 -misplaced-comparison-constant:27:bad_comparisons:Comparison should be dummy_return() > 3 -misplaced-comparison-constant:29:bad_comparisons:Comparison should be instance.dummy_return() != 4 -misplaced-comparison-constant:31:bad_comparisons:Comparison should be instance.attr == 1 +misplaced-comparison-constant:21:bad_comparisons:Comparison should be i == 1 +misplaced-comparison-constant:23:bad_comparisons:Comparison should be dummy_return() > 3 +misplaced-comparison-constant:25:bad_comparisons:Comparison should be instance.dummy_return() != 4 +misplaced-comparison-constant:27:bad_comparisons:Comparison should be instance.attr == 1 |