Stub packages, modules and attributes.
Project description
https://github.com/idlesign/pytest-stub
Description
Stub packages, modules and attributes.
This pytest plugin allows you to replace dependencies with stubs.
It can be useful if you want to test some code using a dependency without actually having this dependency, for example if you’re testing your library, which uses some parts of another library.
Requirements
Python 3.6+
pytest >= 2.9.0
How to use
Use stub fixture in your test functions, like this:
def test_django_related(stub):
stub.apply({
# Replace `call_command` with a generated function.
'django.core.management.call_command': '[func]',
# Replace `BaseCommand` with a generated class.
'django.core.management.base.BaseCommand': '[cls]',
# Replace `dummy` with generated MagicMock.
'django.dummy': '[mock]',
# Replace entire `cv2` module.
'cv2': '[mock]',
# Stub multiple attributes in the same module with custom objects.
'django.conf': {
'settings': object(),
'some': True,
},
})
You can stub dependencies either with your own custom objects or you may instruct pytest-stub to generate functions or classes for you.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pytest-stub-1.0.0.tar.gz
(5.3 kB
view hashes)
Built Distribution
Close
Hashes for pytest_stub-1.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4490aec561f2f31e8dc201c303fdf766432fd95a5cbb9d1ccf3ea849cd31d86f |
|
MD5 | fbb09ea51f617230edbde88a1ed9fd36 |
|
BLAKE2b-256 | 37ea8f3b30d7667cbe959e09f48e11a3947770ab4ee4778ed11cb48fdba9dd8d |