gh-155648: Fix IDLE tests that cannot fail - #156257
Conversation
DD bug 26:
test_autocomplete.py:241 passes when proper because `any([]) is
True` is true. It would also pass if is small only had underscored
words because the filter got reversed. Change logic and replace
filter with generator expressions.
test_editor.py:236 and test_configdialog.py:55 have empty tests
('pass'); comment them out.
template.py:25 tests `True == True`; make another comparison.
The template fix still might fail the bug scanner, but does not
matter. It is not run, and might not be needed any longer.
|
See #156260 which implements the tests instead of commenting them out. |
|
I made a change in each file. Please re-review. I would like to merge this now as a minimal fix, and include 3.15 in the backports. I looked at the +300 lines of real tests and would like to defer them until 3.15 is unlocked. |
There was a problem hiding this comment.
What is the difference between these lines...
|
Thanks @terryjreedy for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13, 3.14, 3.15. |
|
GH-156315 is a backport of this pull request to the 3.15 branch. |
|
GH-156316 is a backport of this pull request to the 3.14 branch. |
|
GH-156317 is a backport of this pull request to the 3.13 branch. |
|
Serhiy, thank you for review. Original patch 'worked'; reviewed result is better for each file changed. |
gh-155648: Fix IDLE tests that cannot fail (GH-156257) test_autocomplete.py:241 passes when proper because any([]) is True is true. It would also pass if small only had underscored words because the filter got reversed. Change logic and replace filter with generator expression using slice instead of startswith. Change line 242 to match. test_editor.py:236 and test_configdialog.py:55 have empty tests ('pass'); skip them for now. PR-GH-156260 add real tests. template.py:25 tests True == True; skip it. With this, the bug scanner should be satisfied while allowing setUpClass and tearDownClass to run and be verified. Remove duplicate and confusing fetch_completions call. (cherry picked from commit ee1da7e) Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
gh-155648: Fix IDLE tests that cannot fail (GH-156257) test_autocomplete.py:241 passes when proper because any([]) is True is true. It would also pass if small only had underscored words because the filter got reversed. Change logic and replace filter with generator expression using slice instead of startswith. Change line 242 to match. test_editor.py:236 and test_configdialog.py:55 have empty tests ('pass'); skip them for now. PR-GH-156260 add real tests. template.py:25 tests True == True; skip it. With this, the bug scanner should be satisfied while allowing setUpClass and tearDownClass to run and be verified. Remove duplicate and confusing fetch_completions call. (cherry picked from commit ee1da7e) Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
RMenuTest and ConfigDialogTest were skipped as empty in pythonGH-156257. They are no longer empty. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
DD bug 26:
test_autocomplete.py:241 passes when proper because
any([]) is Trueis true. It would also pass if small only had underscored words because the filter got reversed. Change logic and replace filter with generator expressionusing slice instead of startswith. Change line 242 to match.
test_editor.py:236 and test_configdialog.py:55 have empty tests ('pass'); skip them for now.
PR-#156260 add real tests.
template.py:25 tests
True == True; skip it. With this, the bug scanner should be satisfied while allowingsetUpClass and tearDownClass to run and be verified.