TestSlide fixture for pytest
Project description
TestSlide fixture for pytest.
Quickstart
Install:
pip install pytest-testslide
In your test file:
import pytest
from pytest_testslide import testslide
from testslide import StrictMock # if you wish to use StrictMock
from testslide import matchers # if you wish to use Rspec style argument matchers
.....
def test_mock_callable_patching_works(testslide):
testslide.mock_callable(time, "sleep").to_raise(RuntimeError("Mocked!")) #mock_callable
with pytest.raises(RuntimeError):
time.sleep()
@pytest.mark.asyncio
async def test_mock_async_callable_patching_works(testslide):
testslide.mock_async_callable(sample_module.ParentTarget, "async_static_method").to_raise(RuntimeError("Mocked!")) #mock_async_callable
with pytest.raises(RuntimeError):
await sample_module.ParentTarget.async_static_method("a", "b")
def test_mock_constructor_patching_works(testslide):
testslide.mock_constructor(sample_module, "ParentTarget").to_raise(RuntimeError("Mocked!")) #mock_constructor
with pytest.raises(RuntimeError):
sample_module.ParentTarget()
def test_patch_attribute_patching_works(testslide):
testslide.patch_attribute(sample_module.SomeClass, "attribute", "patched") #patch_attribute
assert sample_module.SomeClass.attribute == "patched"
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-testslide-2.6.3.tar.gz
(2.8 kB
view hashes)
Built Distribution
Close
Hashes for pytest_testslide-2.6.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4bbce871a66e204b8ac3750a4cca5ca1eec44dba45649fcbad14651e7083bfea |
|
MD5 | bde0eb5c52c02d198029bf768a7754a3 |
|
BLAKE2b-256 | f109760b5a7d9de98554918cdbedcc0ed2fab689aae9689290d330187757b34e |