ruff/crates/ruff_linter/resources/test/fixtures/flake8_simplify
Dhruv Manilawala 1968332d93 Redirect `PLR1701` to `SIM101` (#12021)
## Summary

This rule removes `PLR1701` and redirects it to `SIM101`.

In addition to that, the `SIM101` autofix has been fixed to add padding
if required.

### `PLR1701` has bugs

It also seems that the implementation of `PLR1701` is incorrect in
multiple scenarios. For example, the following code snippet:
```py
# There are two _different_ variables `a` and `b`
if isinstance(a, int) or isinstance(b, bool) or isinstance(a, float):
    pass
# There's another condition `or 1`
if isinstance(self.k, int) or isinstance(self.k, float) or 1:
    pass
```
is fixed to:
```py
# Fixed to only considering variable `a`
if isinstance(a, (float, int)):
    pass
# The additional condition is not present in the fix
if isinstance(self.k, (float, int)):
    pass
```

Playground: https://play.ruff.rs/6cfbdfb7-f183-43b0-b59e-31e728b34190

## Documentation Preview

### `PLR1701`

<img width="1397" alt="Screenshot 2024-06-25 at 11 14 40"
src="https://github.com/astral-sh/ruff/assets/67177269/779ee84d-7c4d-4bb8-a3a4-c2b23a313eba">

## Test Plan

Remove the test cases for `PLR1701`, port the padding test case to
`SIM101` and update the snapshot.
2024-06-27 13:44:11 +02:00
..
SIM101.py Redirect `PLR1701` to `SIM101` (#12021) 2024-06-27 13:44:11 +02:00
SIM102.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM103.py [`flake8-simplify`] Simplify double negatives in `SIM103` (#11684) 2024-06-01 23:21:11 +00:00
SIM105_0.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM105_1.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM105_2.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM105_3.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM105_4.py Skip BOM when inserting start-of-file imports (#7622) 2023-09-23 19:36:50 +00:00
SIM107.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM108.py Avoid if-else simplification for `TYPE_CHECKING` blocks (#8072) 2023-10-19 19:15:54 -04:00
SIM109.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM110.py Fix SIM110 with a yield in the condition (#7801) 2023-10-04 08:59:19 -04:00
SIM111.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM112.py [`SIM112`] Ignore `https_proxy`, `http_proxy`, and `no_proxy` (#8140) 2023-10-23 08:48:36 -05:00
SIM113.py Fix SIM113 false positive with async for loops (#9996) 2024-02-15 22:40:01 -05:00
SIM114.py [`flake8-simplify`] - Fix syntax error in autofix (`SIM114`) (#9704) 2024-01-30 11:36:44 -05:00
SIM115.py Avoid recommending context manager in `__enter__` implementations (#11575) 2024-05-28 01:44:24 +00:00
SIM116.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM117.py Fix typos found by codespell (#9346) 2024-01-02 02:08:15 +00:00
SIM118.py Improve inference capabilities of the `BuiltinTypeChecker` (#10976) 2024-04-16 18:53:22 +01:00
SIM201.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM202.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM208.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM210.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM211.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM212.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM220.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM221.py Rename `ruff` crate to `ruff_linter` (#7529) 2023-09-20 08:38:27 +02:00
SIM222.py Account for possibly-empty f-string values in truthiness logic (#9484) 2024-01-11 21:16:19 -05:00
SIM223.py Account for possibly-empty f-string values in truthiness logic (#9484) 2024-01-11 21:16:19 -05:00
SIM300.py SIM300: CONSTANT_CASE variables are improperly flagged for yoda violation (#9164) 2023-12-20 20:26:07 +00:00
SIM401.py Make SIM401 catch ternary operations (#7415) 2023-10-20 20:47:00 +00:00
SIM910.py Extend `dict-get-with-none-default` (`SIM910`) to non-literals (#8762) 2023-11-19 00:21:53 +00:00
SIM911.py [`flake8-simplify`] Avoid raising `SIM911` for non-`zip` attribute calls (#11126) 2024-04-24 13:05:17 +00:00