Soft assertions for Python/Pytest
Project description
soft-asserts
Soft assertions for Python/Pytest
Installation
pip install soft-assert
Usage
Assertion is performed immediately after the call check()
,
but the expected result is obtained only after exit the context manager verify()
Quick example:
from soft_assert import check, verify
def test_something():
with verify():
check(1 == 1)
check(2 > 1, 'Message if test failed')
check('one' != 'two', 'Some message')
You can use asserts in loop:
from soft_assert import check, verify
def test_asserts_in_loop():
with verify():
for number in range(1, 10):
check(number % 2 == 0, '{number} is not a multiple of 2')
Also you can use it with pytest parametrized tests:
import pytest
from soft_assert import check, verify
@pytest.mark.parametrize('number', list(range(1, 10)))
def test_pytest_example(number):
with verify():
check(number % 2 == 0)
Example of output:
AssertionError: Failed conditions count: [ 4 ]
1. Failure: Custom message if test failed
2. Failure: Lists not equals
3. Failure: Your custom message; 4 < 5!
4. Failure: one != two
More examples you can find in test_example.py
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
soft-assert-1.0.5.tar.gz
(2.9 kB
view details)
Built Distribution
File details
Details for the file soft-assert-1.0.5.tar.gz
.
File metadata
- Download URL: soft-assert-1.0.5.tar.gz
- Upload date:
- Size: 2.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
20d2882eadda21a7198c56f64001d876837870bfe29c390b77d1b67852ad1bc2
|
|
MD5 |
7391a5de68cd466fd3b669983d6ae209
|
|
BLAKE2b-256 |
34c0f6c2ce71c35cbe24ace2bd13f6d7c71756c8e4865086224752bf3f97fa42
|
File details
Details for the file soft_assert-1.0.5-py3-none-any.whl
.
File metadata
- Download URL: soft_assert-1.0.5-py3-none-any.whl
- Upload date:
- Size: 3.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
3ceb6ce13ac4d4a31f8b083f905be55ad9ec73d72e27870c410bd5c0a3a72149
|
|
MD5 |
211d0f6752b3f6ff5f3d2da0c08ae988
|
|
BLAKE2b-256 |
5b3f3061fee4f3f8df61399e7ca6de0284f5160555e88d27d6b415805f9657e3
|