Skip to main content

Mypy static type checker plugin for Pytest

Project description

See Build Status on Travis CI See Latest Release on PyPI

Mypy static type checker plugin for Pytest


Features

  • Runs the mypy static type checker on your source files as part of your Pytest test runs.

  • Does for mypy what the pytest-flake8 plugin does for flake8.

  • This is a work in progress – pull requests appreciated.

Installation

You can install “pytest-mypy” via pip from PyPI:

$ pip install pytest-mypy

Usage

You can enable pytest-mypy with the --mypy flag:

$ py.test --mypy test_*.py

Mypy supports reading configuration settings from a mypy.ini file. Alternatively, the plugin can be configured in a conftest.py to invoke mypy with extra options:

def pytest_configure(config):
    plugin = config.pluginmanager.getplugin('mypy')
    plugin.mypy_argv.append('--check-untyped-defs')

You can restrict your test run to only perform mypy checks and not any other tests by using the -m option:

py.test --mypy -m mypy test_*.py

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.

Development Environment Setup

Here’s how to install pytest-mypy in development mode so you can test your changes locally:

$ pyvenv venv
$ source venv/bin/activate
$ python setup.py develop
$ venv/bin/py.test --mypy example_test.py

How to publish a new version to PyPI

$ pip install twine wheel
$ python setup.py sdist bdist_wheel
$ twine upload dist/*

License

Distributed under the terms of the MIT license, “pytest-mypy” is free and open source software

Issues

If you encounter any problems, please file an issue along with a detailed description.

Meta

Daniel Bader – @dbader_orghttps://dbader.orgmail@dbader.org

https://github.com/dbader/pytest-mypy

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-mypyd-0.3.5.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

pytest_mypyd-0.3.5-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file pytest-mypyd-0.3.5.tar.gz.

File metadata

  • Download URL: pytest-mypyd-0.3.5.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.34.0 CPython/3.7.4

File hashes

Hashes for pytest-mypyd-0.3.5.tar.gz
Algorithm Hash digest
SHA256 811e4f979633e59fb240e402f688a966523621c6f0078e2324bd368475917230
MD5 294ae6a0b08f9a5e7222e95af69b5ff5
BLAKE2b-256 4a58c3eca0b9a2fc52b2b1f6d6b06730d2f76f716a420230bef5bfb28b75ed01

See more details on using hashes here.

File details

Details for the file pytest_mypyd-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: pytest_mypyd-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.34.0 CPython/3.7.4

File hashes

Hashes for pytest_mypyd-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ea02b6b6ea01c30ec08d16440a3932ffee2ec012f2e3603e534237bae95a1d32
MD5 089c2d022c2e334d5ec171d42decaa38
BLAKE2b-256 5793e12ec82f260ab70c042734fbc911b2be1d6f7d92810fa431c356f54ba6a4

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