Skip to main content

A flake8 plugin checking for mocking issues.

Project description

flake8-patch

A flake8 plugin checking for mocking issues.

Currently reports the code PAT001 when assignments to imported objects are detected.

Bad code example

from some_module import SomeClass

def test_something():
    SomeClass.some_method = lambda: 42

This is bad because SomeClass.some_method might be used directly or indirectly in another test, which will break randomly depending on the execution order.

Good code example

from some_module import SomeClass

def test_something(mocker):
    mocker.patch.object(SomeClass, "some_method", return_value=42)

This uses the mocker fixture from pytest-mock to automatically unwind the patch after the test method runs.

Change Log

Unreleased

...

0.1.0 - 2020-10-02

Add PAT001: assignment to imported name

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

flake8-patch-0.1.0.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

flake8_patch-0.1.0-py3-none-any.whl (4.4 kB view details)

Uploaded Python 3

File details

Details for the file flake8-patch-0.1.0.tar.gz.

File metadata

  • Download URL: flake8-patch-0.1.0.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.0 CPython/3.8.2 Linux/5.4.0-48-generic

File hashes

Hashes for flake8-patch-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bfbcf45ef04914bbb85e2352b7335fe38dc7c0a8b98fdd18d7965e5447da9446
MD5 313e0bbb3245a683011f60800dceb191
BLAKE2b-256 179fed810cb8745d6115aa6bc871d328a36f0b0efa40bb6e221627156f0cb094

See more details on using hashes here.

File details

Details for the file flake8_patch-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: flake8_patch-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.0 CPython/3.8.2 Linux/5.4.0-48-generic

File hashes

Hashes for flake8_patch-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5b7fcf8672a30bf94b9053c1d45033951a22d395030c8d3ff41bfa678ebd276d
MD5 d04c665f1bbc8fa4c6efd7c7e96ef304
BLAKE2b-256 8b58bc114b9136d2aa7ca656644d958a04a548414ca8092fb8fd08e4c6ed4cf1

See more details on using hashes here.

Supported by

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