Skip to main content

pytest plugin to check FLAKE8 requirements

Project description

Usage

Install by running the command:

pip install pytest-flake8

After installing it, when you run tests with the option:

py.test --flake8

every file ending in .py will be discovered and checked with flake8.

Configuring FLAKE8 options per project and file

Maximum line length can be configured for the whole project by adding a flake8-max-line-length option to your setup.cfg or tox.ini file like this:

# content of setup.cfg
[pytest]
flake8-max-line-length = 99

Note that the default will be what naturally comes with flake8 (which it turn gets its default from pep8).

You may configure flake8-checking options for your project by adding an flake8-ignore entry to your setup.cfg or tox.ini file like this:

# content of setup.cfg
[pytest]
flake8-ignore = E201 E231

This would globally prevent complaints about two whitespace issues. Rerunning with the above example will now look better:

$ py.test -q  --flake8
collecting ... collected 1 items
.
1 passed in 0.01 seconds

If you have some files where you want to specifically ignore some errors or warnings you can start a flake8-ignore line with a glob-pattern and a space-separated list of codes:

# content of setup.cfg
[pytest]
flake8-ignore =
    *.py E201
    doc/conf.py ALL

So if you have a conf.py like this:

# content of doc/conf.py

func (  [1,2,3]) #this line lots pep8 errors :)

then running again with the previous example will show a single failure and it will ignore doc/conf.py alltogether:

$ py.test --flake8 -v # verbose shows what is ignored
======================================= test session starts ========================================
platform darwin -- Python 2.7.6 -- py-1.4.26 -- pytest-2.7.0 -- /Users/tholo/Source/pytest/bin/python
cachedir: /Users/tholo/Source/pytest/src/verify/.cache
rootdir: /Users/tholo/Source/angular/src/verify, inifile: setup.cfg
plugins: flake8, cache
collected 1 items

myfile.py PASSED

========================================= 1 passed in 0.00 seconds =========================================

Note that doc/conf.py was not considered or imported.

Notes

The repository of this plugin is at https://github.com/tholo/pytest-flake8

For more info on py.test see http://pytest.org

The code is partially based on Ronny Pfannschmidt’s pytest-codecheckers plugin.

Project details


Download files

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

Source Distribution

pytest-flake8-0.5.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pytest_flake8-0.5-py2.py3-none-any.whl (6.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file pytest-flake8-0.5.tar.gz.

File metadata

  • Download URL: pytest-flake8-0.5.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pytest-flake8-0.5.tar.gz
Algorithm Hash digest
SHA256 6e3a7c7734bc3d5dec1fa0783146f326b1bf8a7fa21987c139376440ede2bbfc
MD5 47a56b62c54f19fd5341aea9780f02c7
BLAKE2b-256 f4e200a85a94039ae04af92de68bd17224722904c99fbe2ec3dfaf0d7531b211

See more details on using hashes here.

File details

Details for the file pytest_flake8-0.5-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for pytest_flake8-0.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 fa3e06370c72b2737d4fd64b28ccb8e66bf3ffa9706b9a0caf9d7abab96bd248
MD5 4365e77f54eca4f1ee67d51f821cae9e
BLAKE2b-256 4dc116f9414ba7bafefb37d4888b4e221b6070f1e1119d540b3aa1522e8e60a4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page