Skip to main content

A flake8 plugin checking common style issues or inconsistencies with pytest-based tests.

Project description

flake8-pytest-style

pypi Python: 3.6+ Downloads Build Status Code coverage License: MIT Code style: black

Description

A flake8 plugin checking common style issues or inconsistencies with pytest-based tests.

Currently the following errors are reported:

  • PT001 use @pytest.fixture() over @pytest.fixture

  • PT002 configuration for fixture '{name}' specified via positional args, use kwargs
    e.g. @pytest.fixture(scope='module') is OK, and @pytest.fixture('module') is an error

  • PT003 scope='function' is implied in @pytest.fixture()
    e.g. @pytest.fixture(scope='function') should be replaced with @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}
    e.g. @pytest.mark.parametrize(('name1', 'name2'), ...) is ok, and @pytest.mark.parametrize('name1,name2', ...) is an error

  • PT007 wrong values type in @pytest.mark.parametrize, expected {expected_type}

  • PT008 use return_value= instead of patching with lambda
    e.g. mocker.patch('target', return_value=7) is OK, and mocker.patch('target', lambda *args: 7) is an error

Installation

pip install flake8-pytest-style

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

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for flake8-pytest-style, version 0.1.3
Filename, size File type Python version Upload date Hashes
Filename, size flake8_pytest_style-0.1.3-py3-none-any.whl (7.5 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size flake8-pytest-style-0.1.3.tar.gz (6.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page