Skip to main content

Base fixtures for mockito

Project description

Convenience plugin on top of mockito.

https://travis-ci.org/kaste/pytest-mockito.svg?branch=master

Install

pip install pytest-mockito

After that the plugin is enabled by default.

Fixtures

The plugin provides fixtures for the main entrypoints of mockito which guarantee that you unstub() on teardown. Usage is very simple and straightforward:

def test_foo(when):
    when(os.path).exists('/foo').thenReturn(False)
    assert os.path.exists('/foo')  # sic!
    # will still unstub/unpatch bc pytest will run the teardown

For convenience verifyStubbedInvocationsAreUsed is called just before unstub. This should warn you when you setup stubs that you actually don’t use.

You can also use a marker. usefixtures here will ensure an unstub at the end of each test, but does not actually inject the fixture:

import pytest

@pytest.mark.usefixtures('unstub')
class TestDog:
    def test(self):
        ...

To mark all test cases at the module level:

pytestmark = pytest.mark.usefixtures('unstub')

All of the following fixtures just export the equivalent mockito function but unstub() on teardown. The exception here is expect which also calls verifyNoUnwantedInteractions():

when
when2
expect
patch
unstub
spy2

Project details


Release history Release notifications

This version
History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

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
pytest-mockito-0.0.3.tar.gz (3.0 kB) Copy SHA256 hash SHA256 Source None Feb 2, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page