Skip to content

Commit

Permalink
Create snake_case file if linter is Pylint (#5948)
Browse files Browse the repository at this point in the history
## Summary

The `add_rule.py` script would create a test case that pointed to a file
that didn't exist when the linter is set to `"pylint"`. This PR fixes
that.

## Test Plan

`python scripts/add_rule.py --name DoTheThing --prefix PL --code C0999
--linter pylint`
  • Loading branch information
tjkuson authored Jul 22, 2023
1 parent 2dcd9e2 commit aaf7f36
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions scripts/add_rule.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,12 @@
def main(*, name: str, prefix: str, code: str, linter: str) -> None:
"""Generate boilerplate for a new rule."""
# Create a test fixture.
filestem = f"{prefix}{code}" if linter != "pylint" else snake_case(name)
with (
ROOT_DIR
/ "crates/ruff/resources/test/fixtures"
/ dir_name(linter)
/ f"{prefix}{code}.py"
/ f"{filestem}.py"
).open(
"a",
):
Expand All @@ -45,7 +46,6 @@ def main(*, name: str, prefix: str, code: str, linter: str) -> None:
line.strip() == "fn rules(rule_code: Rule, path: &Path) -> Result<()> {"
):
indent = get_indent(line)
filestem = f"{prefix}{code}" if linter != "pylint" else snake_case(name)
lines.append(
f'{indent}#[test_case(Rule::{name}, Path::new("{filestem}.py"))]',
)
Expand Down

0 comments on commit aaf7f36

Please sign in to comment.