Skip to main content

A linter for Python tests

Project description

Travis build Read the Docs PyPI PyPI - Python Version flake8-aaa is licensed under the MIT License

Flake8-AAA

A linter for Python tests.

  • A Flake8 interface to automatically lint test files as part of your Flake8 run.

  • A command line interface for custom (non-Flake8) usage and debugging.

  • Tests are linted against the Arrange Act Assert pattern.

    TL;DR following the AAA pattern means tests look like this:

    def test():
        """
        __docstring__
        """
        <ARRANGE block> # set up of the system under test (SUT)
    
        <ACT block> # perform a single action on the SUT
    
        <ASSERT block> # check that the SUT changed as expected
    

    You might want to take a look at the examples.

Compatibility

  • Pytest and unittest styles of testing supported.
  • Compatible with Black formatted code.
  • Tested on latest three versions of Python: 3.5, 3.6 and 3.7.
  • Python 2 supported up to v0.4.0: pypi, docs, tag.

See the “Compatibility list” on ReadTheDocs for full info.

Installation

Install with pip:

$ pip install flake8-aaa

Integration with Flake8

Given that you already have Flake8 installed in the same environment, check that Flake8-AAA was installed correctly by asking flake8 for its version signature:

$ flake8 --version
3.7.8 (aaa: 0.7.0, mccabe: 0.6.1, pycodestyle: 2.5.0, pyflakes: 2.1.1) CPython 3.6.7 on Linux

The aaa: 0.7.0 part of that output tells you Flake8 found this plugin. Now you can run flake8 as usual against your project and Flake8-AAA will lint your tests via its plugin:

$ flake8

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
flake8_aaa-0.7.0-py3-none-any.whl (16.4 kB) Copy SHA256 hash SHA256 Wheel py3
flake8-aaa-0.7.0.tar.gz (13.7 kB) Copy SHA256 hash SHA256 Source None

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 SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page