diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-04-10 18:41:13 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-04-10 18:41:13 +0000 |
| commit | 7a6e63f2638cfdf6333417bbc5c57496056048ca (patch) | |
| tree | 2b6f9979ce7ee97e3c06533897fdaf34474a1b91 /python-flake8-pytest-style.spec | |
| parent | f37db481c8df141ba97432e2e7122c7cc8fcc3de (diff) | |
automatic import of python-flake8-pytest-style
Diffstat (limited to 'python-flake8-pytest-style.spec')
| -rw-r--r-- | python-flake8-pytest-style.spec | 814 |
1 files changed, 814 insertions, 0 deletions
diff --git a/python-flake8-pytest-style.spec b/python-flake8-pytest-style.spec new file mode 100644 index 0000000..4550f15 --- /dev/null +++ b/python-flake8-pytest-style.spec @@ -0,0 +1,814 @@ +%global _empty_manifest_terminate_build 0 +Name: python-flake8-pytest-style +Version: 1.7.2 +Release: 1 +Summary: A flake8 plugin checking common style issues or inconsistencies with pytest-based tests. +License: MIT +URL: https://pypi.org/project/flake8-pytest-style +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/c0/6b/12c40bbb136b0423485f5b4ac5939fb984ddbe85f38e6ed484472a89692d/flake8_pytest_style-1.7.2.tar.gz +BuildArch: noarch + +Requires: python3-flake8-plugin-utils + +%description +# flake8-pytest-style + +[](https://pypi.org/project/flake8-pytest-style) +[](https://pypi.org/project/flake8-pytest-style) +[](https://pypistats.org/packages/flake8-pytest-style) +[](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml) +[](https://codecov.io/gh/m-burst/flake8-pytest-style) +[](https://en.wikipedia.org/wiki/MIT_License) +[](https://github.com/ambv/black) + +## Description + +A `flake8` plugin checking common style issues or inconsistencies with `pytest`-based tests. + +Currently the following errors are reported: + +| Code | Description | +| ------- | ----------- | +| [PT001] | use @pytest.fixture() over @pytest.fixture <br> (configurable by `pytest-fixture-no-parentheses`) | +| [PT002] | configuration for fixture '{name}' specified via positional args, use kwargs | +| [PT003] | scope='function' is implied in @pytest.fixture() | +| [PT004] | fixture '{name}' does not return anything, add leading underscore | +| [PT005] | fixture '{name}' returns a value, remove leading underscore | +| [PT006] | wrong name(s) type in @pytest.mark.parametrize, expected {expected_type} <br> (configurable by `pytest-parametrize-names-type`) | +| [PT007] | wrong values type in @pytest.mark.parametrize, expected {expected_type} <br> (configurable by `pytest-parametrize-values-type` and `pytest-parametrize-values-row-type`) | +| [PT008] | use return_value= instead of patching with lambda | +| [PT009] | use a regular assert instead of unittest-style '{assertion}' | +| [PT010] | set the expected exception in pytest.raises() | +| [PT011] | pytest.raises({exception}) is too broad, set the match parameter or use a more specific exception <br> (configurable by `pytest-raises-require-match-for`) | +| [PT012] | pytest.raises() block should contain a single simple statement | +| [PT013] | found incorrect import of pytest, use simple 'import pytest' instead | +| [PT014] | found duplicate test cases {indexes} in @pytest.mark.parametrize | +| [PT015] | assertion always fails, replace with pytest.fail() | +| [PT016] | no message passed to pytest.fail() | +| [PT017] | found assertion on exception {name} in except block, use pytest.raises() instead | +| [PT018] | assertion should be broken down into multiple parts | +| [PT019] | fixture {name} without value is injected as parameter, use @pytest.mark.usefixtures instead | +| [PT020] | @pytest.yield_fixture is deprecated, use @pytest.fixture | +| [PT021] | use yield instead of request.addfinalizer | +| [PT022] | no teardown in fixture {name}, use return instead of yield | +| [PT023] | use @pytest.mark.foo() over @pytest.mark.foo <br> (configurable by `pytest-mark-no-parentheses`) | +| [PT024] | pytest.mark.asyncio is unnecessary for fixtures | +| [PT025] | pytest.mark.usefixtures has no effect on fixtures | +| [PT026] | useless pytest.mark.usefixtures without parameters | +| [PT027] | use pytest.raises() instead of unittest-style '{assertion}' | + +## Installation + + pip install flake8-pytest-style + +## Configuration + +The plugin has the following configuration options: + +* `pytest-fixture-no-parentheses` — see [PT001] +* `pytest-parametrize-names-type` — see [PT006] +* `pytest-parametrize-values-type` — see [PT007] +* `pytest-parametrize-values-row-type` — see [PT007] +* `pytest-raises-require-match-for` — see [PT011] +* `pytest-mark-no-parentheses` — see [PT023] + +## For developers + +### Install deps and setup pre-commit hook + + make init + +### Run linters, autoformat, tests etc. + + make format lint test + +### Bump new version + + make bump_major + make bump_minor + make bump_patch + +## License + +MIT + +## Change Log + +**Unreleased** + +... + +**1.7.2 - 2023-02-15** + +* fix false positive for [PT009] on `pytest.fail` + +**1.7.1 - 2023-02-15** + +* update list of unittest-style assert methods for [PT009]/[PT027] + +**1.7.0 - 2023-02-09** + +* require at least Python 3.7.2 +* support Python 3.11 +* add [PT027] (checks for unittest-style `assertRaises`) + +**1.6.0 - 2021-12-23** + +* require at least Python 3.6.2 +* expose `py.typed` file + +**1.5.1 - 2021-11-05** + +* better wording for [PT011] +* support Python 3.10 + +**1.5.0 - 2021-06-18** + +* add [PT025] (checks for erroneous `pytest.mark.usefixtures` on fixtures) +* add [PT026] (checks for `pytest.mark.usefixtures` without parameters) + +**1.4.4 - 2021-06-17** + +* fix [PT023] not checking marks in classes +* fix [PT004] incorrectly firing on fixtures with `yield from` + +**1.4.2 - 2021-05-24** + +* update `flake8-plugin-utils` version to improve stability + +**1.4.1 - 2021-04-01** + +* fix argparse-related warnings + +**1.4.0 - 2021-03-14** + +* add [PT023] (checks for parentheses consistency in `pytest.mark` usage) +* add [PT024] (checks for unnecessary `pytest.mark.asyncio` on fixtures) +* fix [PT004], [PT005] firing on abstract fixtures +* fix [PT012] firing on `with` statements containing a single `pass` + +**1.3.0 - 2020-08-30** + +* add [PT022] (checks for `yield` fixtures without teardown) + +**1.2.3 - 2020-08-06** + +* update `flake8-plugin-utils` dependency to fix encoding problems on Windows + +**1.2.2 - 2020-07-23** + +* fix [PT004]/[PT005] inspecting returns of nested functions + +**1.2.1 - 2020-06-15** + +* fix [PT021] for factory fixtures (#46) + +**1.2.0 - 2020-06-12** + +* support scoped `mocker` fixtures from `pytest-mock` for [PT008] +* check for positional-only lambda arguments in [PT008] +* add [PT020] (checks for `pytest.yield_fixture`) +* add [PT021] (checks for `request.addfinalizer`) +* add documentation pages for all rules + +**1.1.1 - 2020-04-17** + +* fix [PT011] not reporting `match=''` as a violation + +**1.1.0 - 2020-04-14** + +* add [PT015] (checks for `assert False`) +* add [PT016] (checks for `pytest.fail()` without message) +* add [PT017] (checks for assertions on exceptions in `except` blocks) +* add [PT018] (checks for composite assertions) +* add [PT019] (checks for fixtures without value injected as parameters) + +**1.0.0 - 2020-03-26** + +* add [PT014] (checks for duplicate test cases in `@pytest.mark.parametrize`) + +**0.6.0 - 2020-03-21** + +* add configuration option `pytest-parametrize-names-type` for [PT006] +* add configuration options `pytest-parametrize-values-type` and +`pytest-parametrize-values-row-type` for [PT007] + +**0.5.0 - 2020-03-09** + +* add configuration option `pytest-fixture-no-parentheses` for [PT001] +* add [PT013] (checks for `from`-imports from `pytest`) + +**0.4.0 - 2020-03-09** + +* add [PT012] (checks for multiple statements in `with pytest.raises()`) + +**0.3.1 - 2020-03-09** + +* fix default value of `pytest-raises-require-match-for` config option + +**0.3.0 - 2020-03-09** + +* add [PT010] and [PT011] (checks for `pytest.raises` parameters) + +**0.2.0 - 2020-03-01** + +* add [PT009] (ported from [flake8-pytest](https://github.com/vikingco/flake8-pytest)) + +**0.1.3 - 2019-05-24** + +* add `yield` fixtures support +* fix changelog entry for 0.1.2 + +**0.1.2 - 2019-05-23** + +* fix parametrize checkers not working in decorators + +**0.1.1 - 2019-05-23** + +* update PyPI description + +**0.1.0 - 2019-05-23** + +* initial + +[PT001]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT001.md +[PT002]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT002.md +[PT003]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT003.md +[PT004]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT004.md +[PT005]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT005.md +[PT006]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT006.md +[PT007]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT007.md +[PT008]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT008.md +[PT009]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT009.md +[PT010]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT010.md +[PT011]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT011.md +[PT012]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT012.md +[PT013]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT013.md +[PT014]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT014.md +[PT015]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT015.md +[PT016]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT016.md +[PT017]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT017.md +[PT018]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT018.md +[PT019]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT019.md +[PT020]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT020.md +[PT021]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT021.md +[PT022]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT022.md +[PT023]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT023.md +[PT024]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT024.md +[PT025]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT025.md +[PT026]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT026.md +[PT027]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT027.md + + +%package -n python3-flake8-pytest-style +Summary: A flake8 plugin checking common style issues or inconsistencies with pytest-based tests. +Provides: python-flake8-pytest-style +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-flake8-pytest-style +# flake8-pytest-style + +[](https://pypi.org/project/flake8-pytest-style) +[](https://pypi.org/project/flake8-pytest-style) +[](https://pypistats.org/packages/flake8-pytest-style) +[](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml) +[](https://codecov.io/gh/m-burst/flake8-pytest-style) +[](https://en.wikipedia.org/wiki/MIT_License) +[](https://github.com/ambv/black) + +## Description + +A `flake8` plugin checking common style issues or inconsistencies with `pytest`-based tests. + +Currently the following errors are reported: + +| Code | Description | +| ------- | ----------- | +| [PT001] | use @pytest.fixture() over @pytest.fixture <br> (configurable by `pytest-fixture-no-parentheses`) | +| [PT002] | configuration for fixture '{name}' specified via positional args, use kwargs | +| [PT003] | scope='function' is implied in @pytest.fixture() | +| [PT004] | fixture '{name}' does not return anything, add leading underscore | +| [PT005] | fixture '{name}' returns a value, remove leading underscore | +| [PT006] | wrong name(s) type in @pytest.mark.parametrize, expected {expected_type} <br> (configurable by `pytest-parametrize-names-type`) | +| [PT007] | wrong values type in @pytest.mark.parametrize, expected {expected_type} <br> (configurable by `pytest-parametrize-values-type` and `pytest-parametrize-values-row-type`) | +| [PT008] | use return_value= instead of patching with lambda | +| [PT009] | use a regular assert instead of unittest-style '{assertion}' | +| [PT010] | set the expected exception in pytest.raises() | +| [PT011] | pytest.raises({exception}) is too broad, set the match parameter or use a more specific exception <br> (configurable by `pytest-raises-require-match-for`) | +| [PT012] | pytest.raises() block should contain a single simple statement | +| [PT013] | found incorrect import of pytest, use simple 'import pytest' instead | +| [PT014] | found duplicate test cases {indexes} in @pytest.mark.parametrize | +| [PT015] | assertion always fails, replace with pytest.fail() | +| [PT016] | no message passed to pytest.fail() | +| [PT017] | found assertion on exception {name} in except block, use pytest.raises() instead | +| [PT018] | assertion should be broken down into multiple parts | +| [PT019] | fixture {name} without value is injected as parameter, use @pytest.mark.usefixtures instead | +| [PT020] | @pytest.yield_fixture is deprecated, use @pytest.fixture | +| [PT021] | use yield instead of request.addfinalizer | +| [PT022] | no teardown in fixture {name}, use return instead of yield | +| [PT023] | use @pytest.mark.foo() over @pytest.mark.foo <br> (configurable by `pytest-mark-no-parentheses`) | +| [PT024] | pytest.mark.asyncio is unnecessary for fixtures | +| [PT025] | pytest.mark.usefixtures has no effect on fixtures | +| [PT026] | useless pytest.mark.usefixtures without parameters | +| [PT027] | use pytest.raises() instead of unittest-style '{assertion}' | + +## Installation + + pip install flake8-pytest-style + +## Configuration + +The plugin has the following configuration options: + +* `pytest-fixture-no-parentheses` — see [PT001] +* `pytest-parametrize-names-type` — see [PT006] +* `pytest-parametrize-values-type` — see [PT007] +* `pytest-parametrize-values-row-type` — see [PT007] +* `pytest-raises-require-match-for` — see [PT011] +* `pytest-mark-no-parentheses` — see [PT023] + +## For developers + +### Install deps and setup pre-commit hook + + make init + +### Run linters, autoformat, tests etc. + + make format lint test + +### Bump new version + + make bump_major + make bump_minor + make bump_patch + +## License + +MIT + +## Change Log + +**Unreleased** + +... + +**1.7.2 - 2023-02-15** + +* fix false positive for [PT009] on `pytest.fail` + +**1.7.1 - 2023-02-15** + +* update list of unittest-style assert methods for [PT009]/[PT027] + +**1.7.0 - 2023-02-09** + +* require at least Python 3.7.2 +* support Python 3.11 +* add [PT027] (checks for unittest-style `assertRaises`) + +**1.6.0 - 2021-12-23** + +* require at least Python 3.6.2 +* expose `py.typed` file + +**1.5.1 - 2021-11-05** + +* better wording for [PT011] +* support Python 3.10 + +**1.5.0 - 2021-06-18** + +* add [PT025] (checks for erroneous `pytest.mark.usefixtures` on fixtures) +* add [PT026] (checks for `pytest.mark.usefixtures` without parameters) + +**1.4.4 - 2021-06-17** + +* fix [PT023] not checking marks in classes +* fix [PT004] incorrectly firing on fixtures with `yield from` + +**1.4.2 - 2021-05-24** + +* update `flake8-plugin-utils` version to improve stability + +**1.4.1 - 2021-04-01** + +* fix argparse-related warnings + +**1.4.0 - 2021-03-14** + +* add [PT023] (checks for parentheses consistency in `pytest.mark` usage) +* add [PT024] (checks for unnecessary `pytest.mark.asyncio` on fixtures) +* fix [PT004], [PT005] firing on abstract fixtures +* fix [PT012] firing on `with` statements containing a single `pass` + +**1.3.0 - 2020-08-30** + +* add [PT022] (checks for `yield` fixtures without teardown) + +**1.2.3 - 2020-08-06** + +* update `flake8-plugin-utils` dependency to fix encoding problems on Windows + +**1.2.2 - 2020-07-23** + +* fix [PT004]/[PT005] inspecting returns of nested functions + +**1.2.1 - 2020-06-15** + +* fix [PT021] for factory fixtures (#46) + +**1.2.0 - 2020-06-12** + +* support scoped `mocker` fixtures from `pytest-mock` for [PT008] +* check for positional-only lambda arguments in [PT008] +* add [PT020] (checks for `pytest.yield_fixture`) +* add [PT021] (checks for `request.addfinalizer`) +* add documentation pages for all rules + +**1.1.1 - 2020-04-17** + +* fix [PT011] not reporting `match=''` as a violation + +**1.1.0 - 2020-04-14** + +* add [PT015] (checks for `assert False`) +* add [PT016] (checks for `pytest.fail()` without message) +* add [PT017] (checks for assertions on exceptions in `except` blocks) +* add [PT018] (checks for composite assertions) +* add [PT019] (checks for fixtures without value injected as parameters) + +**1.0.0 - 2020-03-26** + +* add [PT014] (checks for duplicate test cases in `@pytest.mark.parametrize`) + +**0.6.0 - 2020-03-21** + +* add configuration option `pytest-parametrize-names-type` for [PT006] +* add configuration options `pytest-parametrize-values-type` and +`pytest-parametrize-values-row-type` for [PT007] + +**0.5.0 - 2020-03-09** + +* add configuration option `pytest-fixture-no-parentheses` for [PT001] +* add [PT013] (checks for `from`-imports from `pytest`) + +**0.4.0 - 2020-03-09** + +* add [PT012] (checks for multiple statements in `with pytest.raises()`) + +**0.3.1 - 2020-03-09** + +* fix default value of `pytest-raises-require-match-for` config option + +**0.3.0 - 2020-03-09** + +* add [PT010] and [PT011] (checks for `pytest.raises` parameters) + +**0.2.0 - 2020-03-01** + +* add [PT009] (ported from [flake8-pytest](https://github.com/vikingco/flake8-pytest)) + +**0.1.3 - 2019-05-24** + +* add `yield` fixtures support +* fix changelog entry for 0.1.2 + +**0.1.2 - 2019-05-23** + +* fix parametrize checkers not working in decorators + +**0.1.1 - 2019-05-23** + +* update PyPI description + +**0.1.0 - 2019-05-23** + +* initial + +[PT001]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT001.md +[PT002]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT002.md +[PT003]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT003.md +[PT004]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT004.md +[PT005]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT005.md +[PT006]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT006.md +[PT007]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT007.md +[PT008]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT008.md +[PT009]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT009.md +[PT010]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT010.md +[PT011]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT011.md +[PT012]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT012.md +[PT013]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT013.md +[PT014]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT014.md +[PT015]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT015.md +[PT016]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT016.md +[PT017]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT017.md +[PT018]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT018.md +[PT019]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT019.md +[PT020]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT020.md +[PT021]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT021.md +[PT022]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT022.md +[PT023]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT023.md +[PT024]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT024.md +[PT025]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT025.md +[PT026]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT026.md +[PT027]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT027.md + + +%package help +Summary: Development documents and examples for flake8-pytest-style +Provides: python3-flake8-pytest-style-doc +%description help +# flake8-pytest-style + +[](https://pypi.org/project/flake8-pytest-style) +[](https://pypi.org/project/flake8-pytest-style) +[](https://pypistats.org/packages/flake8-pytest-style) +[](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml) +[](https://codecov.io/gh/m-burst/flake8-pytest-style) +[](https://en.wikipedia.org/wiki/MIT_License) +[](https://github.com/ambv/black) + +## Description + +A `flake8` plugin checking common style issues or inconsistencies with `pytest`-based tests. + +Currently the following errors are reported: + +| Code | Description | +| ------- | ----------- | +| [PT001] | use @pytest.fixture() over @pytest.fixture <br> (configurable by `pytest-fixture-no-parentheses`) | +| [PT002] | configuration for fixture '{name}' specified via positional args, use kwargs | +| [PT003] | scope='function' is implied in @pytest.fixture() | +| [PT004] | fixture '{name}' does not return anything, add leading underscore | +| [PT005] | fixture '{name}' returns a value, remove leading underscore | +| [PT006] | wrong name(s) type in @pytest.mark.parametrize, expected {expected_type} <br> (configurable by `pytest-parametrize-names-type`) | +| [PT007] | wrong values type in @pytest.mark.parametrize, expected {expected_type} <br> (configurable by `pytest-parametrize-values-type` and `pytest-parametrize-values-row-type`) | +| [PT008] | use return_value= instead of patching with lambda | +| [PT009] | use a regular assert instead of unittest-style '{assertion}' | +| [PT010] | set the expected exception in pytest.raises() | +| [PT011] | pytest.raises({exception}) is too broad, set the match parameter or use a more specific exception <br> (configurable by `pytest-raises-require-match-for`) | +| [PT012] | pytest.raises() block should contain a single simple statement | +| [PT013] | found incorrect import of pytest, use simple 'import pytest' instead | +| [PT014] | found duplicate test cases {indexes} in @pytest.mark.parametrize | +| [PT015] | assertion always fails, replace with pytest.fail() | +| [PT016] | no message passed to pytest.fail() | +| [PT017] | found assertion on exception {name} in except block, use pytest.raises() instead | +| [PT018] | assertion should be broken down into multiple parts | +| [PT019] | fixture {name} without value is injected as parameter, use @pytest.mark.usefixtures instead | +| [PT020] | @pytest.yield_fixture is deprecated, use @pytest.fixture | +| [PT021] | use yield instead of request.addfinalizer | +| [PT022] | no teardown in fixture {name}, use return instead of yield | +| [PT023] | use @pytest.mark.foo() over @pytest.mark.foo <br> (configurable by `pytest-mark-no-parentheses`) | +| [PT024] | pytest.mark.asyncio is unnecessary for fixtures | +| [PT025] | pytest.mark.usefixtures has no effect on fixtures | +| [PT026] | useless pytest.mark.usefixtures without parameters | +| [PT027] | use pytest.raises() instead of unittest-style '{assertion}' | + +## Installation + + pip install flake8-pytest-style + +## Configuration + +The plugin has the following configuration options: + +* `pytest-fixture-no-parentheses` — see [PT001] +* `pytest-parametrize-names-type` — see [PT006] +* `pytest-parametrize-values-type` — see [PT007] +* `pytest-parametrize-values-row-type` — see [PT007] +* `pytest-raises-require-match-for` — see [PT011] +* `pytest-mark-no-parentheses` — see [PT023] + +## For developers + +### Install deps and setup pre-commit hook + + make init + +### Run linters, autoformat, tests etc. + + make format lint test + +### Bump new version + + make bump_major + make bump_minor + make bump_patch + +## License + +MIT + +## Change Log + +**Unreleased** + +... + +**1.7.2 - 2023-02-15** + +* fix false positive for [PT009] on `pytest.fail` + +**1.7.1 - 2023-02-15** + +* update list of unittest-style assert methods for [PT009]/[PT027] + +**1.7.0 - 2023-02-09** + +* require at least Python 3.7.2 +* support Python 3.11 +* add [PT027] (checks for unittest-style `assertRaises`) + +**1.6.0 - 2021-12-23** + +* require at least Python 3.6.2 +* expose `py.typed` file + +**1.5.1 - 2021-11-05** + +* better wording for [PT011] +* support Python 3.10 + +**1.5.0 - 2021-06-18** + +* add [PT025] (checks for erroneous `pytest.mark.usefixtures` on fixtures) +* add [PT026] (checks for `pytest.mark.usefixtures` without parameters) + +**1.4.4 - 2021-06-17** + +* fix [PT023] not checking marks in classes +* fix [PT004] incorrectly firing on fixtures with `yield from` + +**1.4.2 - 2021-05-24** + +* update `flake8-plugin-utils` version to improve stability + +**1.4.1 - 2021-04-01** + +* fix argparse-related warnings + +**1.4.0 - 2021-03-14** + +* add [PT023] (checks for parentheses consistency in `pytest.mark` usage) +* add [PT024] (checks for unnecessary `pytest.mark.asyncio` on fixtures) +* fix [PT004], [PT005] firing on abstract fixtures +* fix [PT012] firing on `with` statements containing a single `pass` + +**1.3.0 - 2020-08-30** + +* add [PT022] (checks for `yield` fixtures without teardown) + +**1.2.3 - 2020-08-06** + +* update `flake8-plugin-utils` dependency to fix encoding problems on Windows + +**1.2.2 - 2020-07-23** + +* fix [PT004]/[PT005] inspecting returns of nested functions + +**1.2.1 - 2020-06-15** + +* fix [PT021] for factory fixtures (#46) + +**1.2.0 - 2020-06-12** + +* support scoped `mocker` fixtures from `pytest-mock` for [PT008] +* check for positional-only lambda arguments in [PT008] +* add [PT020] (checks for `pytest.yield_fixture`) +* add [PT021] (checks for `request.addfinalizer`) +* add documentation pages for all rules + +**1.1.1 - 2020-04-17** + +* fix [PT011] not reporting `match=''` as a violation + +**1.1.0 - 2020-04-14** + +* add [PT015] (checks for `assert False`) +* add [PT016] (checks for `pytest.fail()` without message) +* add [PT017] (checks for assertions on exceptions in `except` blocks) +* add [PT018] (checks for composite assertions) +* add [PT019] (checks for fixtures without value injected as parameters) + +**1.0.0 - 2020-03-26** + +* add [PT014] (checks for duplicate test cases in `@pytest.mark.parametrize`) + +**0.6.0 - 2020-03-21** + +* add configuration option `pytest-parametrize-names-type` for [PT006] +* add configuration options `pytest-parametrize-values-type` and +`pytest-parametrize-values-row-type` for [PT007] + +**0.5.0 - 2020-03-09** + +* add configuration option `pytest-fixture-no-parentheses` for [PT001] +* add [PT013] (checks for `from`-imports from `pytest`) + +**0.4.0 - 2020-03-09** + +* add [PT012] (checks for multiple statements in `with pytest.raises()`) + +**0.3.1 - 2020-03-09** + +* fix default value of `pytest-raises-require-match-for` config option + +**0.3.0 - 2020-03-09** + +* add [PT010] and [PT011] (checks for `pytest.raises` parameters) + +**0.2.0 - 2020-03-01** + +* add [PT009] (ported from [flake8-pytest](https://github.com/vikingco/flake8-pytest)) + +**0.1.3 - 2019-05-24** + +* add `yield` fixtures support +* fix changelog entry for 0.1.2 + +**0.1.2 - 2019-05-23** + +* fix parametrize checkers not working in decorators + +**0.1.1 - 2019-05-23** + +* update PyPI description + +**0.1.0 - 2019-05-23** + +* initial + +[PT001]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT001.md +[PT002]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT002.md +[PT003]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT003.md +[PT004]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT004.md +[PT005]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT005.md +[PT006]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT006.md +[PT007]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT007.md +[PT008]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT008.md +[PT009]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT009.md +[PT010]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT010.md +[PT011]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT011.md +[PT012]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT012.md +[PT013]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT013.md +[PT014]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT014.md +[PT015]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT015.md +[PT016]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT016.md +[PT017]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT017.md +[PT018]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT018.md +[PT019]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT019.md +[PT020]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT020.md +[PT021]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT021.md +[PT022]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT022.md +[PT023]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT023.md +[PT024]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT024.md +[PT025]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT025.md +[PT026]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT026.md +[PT027]: https://github.com/m-burst/flake8-pytest-style/blob/v1.7.2/docs/rules/PT027.md + + +%prep +%autosetup -n flake8-pytest-style-1.7.2 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-flake8-pytest-style -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.7.2-1 +- Package Spec generated |
