Skip to content
pytest plugin for testing mypy types, stubs, and plugins
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
pytest_mypy call extension before mypy config write (#7) Jul 24, 2019
.gitignore fix typechecking Feb 15, 2019
.travis.yml fix ci Nov 28, 2018
LICENSE initial commit Nov 28, 2018 Adds gitter label Sep 8, 2019
mypy.ini add README, mypy config and checking Nov 28, 2018
pytest.ini make extension of the plugin more ergonomic (#4) Jul 23, 2019
release.xsh tweak release.xsh file Jul 21, 2019 bump to 1.0.3 Jul 24, 2019

mypy logo

pytest plugin for testing mypy types, stubs, and plugins

Build Status Checked with mypy Gitter


pip install pytest-mypy-plugins


Examples of a test case:

# typesafety/test_request.yml
-   case: request_object_has_user_of_type_auth_user_model
    disable_cache: true
    main: |
        from django.http.request import HttpRequest
        reveal_type(HttpRequest().user)  # N: Revealed type is 'myapp.models.MyUser'
        # check that other fields work ok
        reveal_type(HttpRequest().method)  # N: Revealed type is 'Union[builtins.str, None]'
        -   path: myapp/
        -   path: myapp/
            content: |
                from django.db import models
                class MyUser(models.Model):




                        Base directory for tests to use
                        Which .ini file to use as a default config for tests
                        Now, to help with various issues in django-stubs, it runs every single test in the subprocess mypy call. 
                        Some debuggers cannot attach to subprocess, so enable this flag to make mypy check happen in the same process.
                        (Could cause cache issues)

Further reading



You can’t perform that action at this time.