%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 [![pypi](https://badge.fury.io/py/flake8-pytest-style.svg)](https://pypi.org/project/flake8-pytest-style) [![Python: 3.7+](https://img.shields.io/badge/Python-3.7+-blue.svg)](https://pypi.org/project/flake8-pytest-style) [![Downloads](https://img.shields.io/pypi/dm/flake8-pytest-style.svg)](https://pypistats.org/packages/flake8-pytest-style) [![Build Status](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml) [![Code coverage](https://codecov.io/gh/m-burst/flake8-pytest-style/branch/master/graph/badge.svg)](https://codecov.io/gh/m-burst/flake8-pytest-style) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://en.wikipedia.org/wiki/MIT_License) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](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
(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}
(configurable by `pytest-parametrize-names-type`) | | [PT007] | wrong values type in @pytest.mark.parametrize, expected {expected_type}
(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
(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
(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 [![pypi](https://badge.fury.io/py/flake8-pytest-style.svg)](https://pypi.org/project/flake8-pytest-style) [![Python: 3.7+](https://img.shields.io/badge/Python-3.7+-blue.svg)](https://pypi.org/project/flake8-pytest-style) [![Downloads](https://img.shields.io/pypi/dm/flake8-pytest-style.svg)](https://pypistats.org/packages/flake8-pytest-style) [![Build Status](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml) [![Code coverage](https://codecov.io/gh/m-burst/flake8-pytest-style/branch/master/graph/badge.svg)](https://codecov.io/gh/m-burst/flake8-pytest-style) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://en.wikipedia.org/wiki/MIT_License) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](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
(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}
(configurable by `pytest-parametrize-names-type`) | | [PT007] | wrong values type in @pytest.mark.parametrize, expected {expected_type}
(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
(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
(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 [![pypi](https://badge.fury.io/py/flake8-pytest-style.svg)](https://pypi.org/project/flake8-pytest-style) [![Python: 3.7+](https://img.shields.io/badge/Python-3.7+-blue.svg)](https://pypi.org/project/flake8-pytest-style) [![Downloads](https://img.shields.io/pypi/dm/flake8-pytest-style.svg)](https://pypistats.org/packages/flake8-pytest-style) [![Build Status](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/m-burst/flake8-pytest-style/actions/workflows/ci.yml) [![Code coverage](https://codecov.io/gh/m-burst/flake8-pytest-style/branch/master/graph/badge.svg)](https://codecov.io/gh/m-burst/flake8-pytest-style) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://en.wikipedia.org/wiki/MIT_License) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](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
(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}
(configurable by `pytest-parametrize-names-type`) | | [PT007] | wrong values type in @pytest.mark.parametrize, expected {expected_type}
(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
(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
(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 - 1.7.2-1 - Package Spec generated