From a182e10b06e0efd91d78f33db5c7424a2afef258 Mon Sep 17 00:00:00 2001 From: Ran Benita Date: Fri, 9 Feb 2024 11:14:36 +0200 Subject: [PATCH] Enable lint PGH004 - Use specific rule codes when using noqa --- bench/bench.py | 2 +- doc/en/example/assertion/failure_demo.py | 4 ++-- pyproject.toml | 1 + src/_pytest/assertion/rewrite.py | 2 +- testing/python/fixtures.py | 2 +- testing/test_assertrewrite.py | 2 +- testing/test_collection.py | 2 +- testing/test_warnings.py | 2 +- 8 files changed, 9 insertions(+), 8 deletions(-) diff --git a/bench/bench.py b/bench/bench.py index 91e380a80..437d3259d 100644 --- a/bench/bench.py +++ b/bench/bench.py @@ -5,7 +5,7 @@ if __name__ == "__main__": import cProfile import pstats - import pytest # NOQA + import pytest # noqa: F401 script = sys.argv[1:] if len(sys.argv) > 1 else ["empty.py"] cProfile.run("pytest.cmdline.main(%r)" % script, "prof") diff --git a/doc/en/example/assertion/failure_demo.py b/doc/en/example/assertion/failure_demo.py index abb9bce50..f7a9c2794 100644 --- a/doc/en/example/assertion/failure_demo.py +++ b/doc/en/example/assertion/failure_demo.py @@ -172,7 +172,7 @@ class TestRaises: raise ValueError("demo error") def test_tupleerror(self): - a, b = [1] # NOQA + a, b = [1] # noqa: F841 def test_reinterpret_fails_with_print_for_the_fun_of_it(self): items = [1, 2, 3] @@ -180,7 +180,7 @@ class TestRaises: a, b = items.pop() def test_some_error(self): - if namenotexi: # NOQA + if namenotexi: # noqa: F821 pass def func1(self): diff --git a/pyproject.toml b/pyproject.toml index e17694723..0a83df1bb 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -103,6 +103,7 @@ select = [ "RUF", # ruff "W", # pycodestyle "PIE", # flake8-pie + "PGH004", # pygrep-hooks - Use specific rule codes when using noqa ] ignore = [ # bugbear ignore diff --git a/src/_pytest/assertion/rewrite.py b/src/_pytest/assertion/rewrite.py index 9f3b65e8f..ddae34c73 100644 --- a/src/_pytest/assertion/rewrite.py +++ b/src/_pytest/assertion/rewrite.py @@ -1006,7 +1006,7 @@ class AssertionRewriter(ast.NodeVisitor): if i: fail_inner: List[ast.stmt] = [] # cond is set in a prior loop iteration below - self.expl_stmts.append(ast.If(cond, fail_inner, [])) # noqa + self.expl_stmts.append(ast.If(cond, fail_inner, [])) # noqa: F821 self.expl_stmts = fail_inner # Check if the left operand is a ast.NamedExpr and the value has already been visited if ( diff --git a/testing/python/fixtures.py b/testing/python/fixtures.py index d0e8723cb..35ed2efc5 100644 --- a/testing/python/fixtures.py +++ b/testing/python/fixtures.py @@ -712,7 +712,7 @@ class TestRequestBasic: ) def test_request_garbage(self, pytester: Pytester) -> None: try: - import xdist # noqa + import xdist # noqa: F401 except ImportError: pass else: diff --git a/testing/test_assertrewrite.py b/testing/test_assertrewrite.py index 6e1a9d54e..b045b601e 100644 --- a/testing/test_assertrewrite.py +++ b/testing/test_assertrewrite.py @@ -200,7 +200,7 @@ class TestAssertionRewrite: assert getmsg(f2) == "assert False" def f3() -> None: - assert a_global # type: ignore[name-defined] # noqa + assert a_global # type: ignore[name-defined] # noqa: F821 assert getmsg(f3, {"a_global": False}) == "assert False" diff --git a/testing/test_collection.py b/testing/test_collection.py index 8e41e0fae..45a1ca9ae 100644 --- a/testing/test_collection.py +++ b/testing/test_collection.py @@ -535,7 +535,7 @@ class TestSession: newid = item.nodeid assert newid == id pprint.pprint(hookrec.calls) - topdir = pytester.path # noqa + topdir = pytester.path # noqa: F841 hookrec.assert_contains( [ ("pytest_collectstart", "collector.path == topdir"), diff --git a/testing/test_warnings.py b/testing/test_warnings.py index 5b2f27139..3ef0cd3b5 100644 --- a/testing/test_warnings.py +++ b/testing/test_warnings.py @@ -794,7 +794,7 @@ def test_resource_warning(pytester: Pytester, monkeypatch: pytest.MonkeyPatch) - # available, using `importorskip("tracemalloc")` for example, # because we want to ensure the same code path does not break in those platforms. try: - import tracemalloc # noqa + import tracemalloc # noqa: F401 has_tracemalloc = True except ImportError: