diff options
| author | Ian Stapleton Cordasco <graffatcolmingov@gmail.com> | 2017-07-28 06:10:12 -0500 |
|---|---|---|
| committer | Ian Stapleton Cordasco <graffatcolmingov@gmail.com> | 2017-07-28 06:10:12 -0500 |
| commit | a44a09f87a783ddfb15634ed0cf9aba76138f991 (patch) | |
| tree | f6f211f4edbb7085cf768be374715a0afde53a5f | |
| parent | 0239f15dcce323357f316a66225b0d4d2308de28 (diff) | |
| download | flake8-a44a09f87a783ddfb15634ed0cf9aba76138f991.tar.gz | |
Remediate one wafer thing decision logic bug
Previously we were hitting the catch-all return that decided the error
was selected. Instead, let's add specific logic since we now know how we
would hit that and we actually don't want it to be selected.
Closes #354
| -rw-r--r-- | src/flake8/style_guide.py | 3 | ||||
| -rw-r--r-- | tests/unit/test_decision_engine.py | 7 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/flake8/style_guide.py b/src/flake8/style_guide.py index 91423de..00eb1a5 100644 --- a/src/flake8/style_guide.py +++ b/src/flake8/style_guide.py @@ -263,6 +263,9 @@ class DecisionEngine(object): if (select is None and (extra_select is None or not self.using_default_ignore)): return Decision.Ignored + if ((select is None and not self.using_default_select) and + (ignore is None and self.using_default_ignore)): + return Decision.Ignored return Decision.Selected def make_decision(self, code): diff --git a/tests/unit/test_decision_engine.py b/tests/unit/test_decision_engine.py index db9c270..354dc69 100644 --- a/tests/unit/test_decision_engine.py +++ b/tests/unit/test_decision_engine.py @@ -162,11 +162,10 @@ def test_decision_for(select_list, ignore_list, error_code, expected): style_guide.Decision.Ignored), (defaults.SELECT, ['E126'], [], ['I'], 'I101', style_guide.Decision.Selected), - # This next one should exercise the catch-all return and yes, this is - # a *very* odd combination but users find much odder combinations - # anyway. (['E', 'W'], defaults.IGNORE, ['I'], [], 'I101', - style_guide.Decision.Selected), + style_guide.Decision.Ignored), + # TODO(sigmavirus24) Figure out how to exercise the final catch-all + # return statement ] ) def test_more_specific_decision_for_logic(select, ignore, extend_select, |
