A painless assertion library for Python.
Project description
Verify is a painless assertion library for Python.
Links
Project: https://github.com/dgilland/verify
Documentation: http://verify.readthedocs.org
TravisCI: https://travis-ci.org/dgilland/verify
Quickstart
Install using pip:
pip install verify
Verify some value using verify’s assertions:
import verify
from verify import Expect, Not
Expect(5 * 5,
verify.Truthy(),
Not(verify.Falsy),
verify.Greater(15),
verify.Less(30))
Expect(lambda: 5 * 5,
verify.GreaterEqual(15),
verify.Less(30))
Verify using your own functions:
def is_just_right(value):
assert 20 <= value <= 30, "it's just not right"
# Passes
Expect(25, is_just_right)
# Fails
try:
Expect(31, is_just_right)
except AssertionError:
raise
Under the hood the value that’s passed to Expect will be piped through all of the assertion callables that are passed to it.
You can also use the verify assertions on their own:
# These will pass.
verify.Truthy(1)
verify.Equal(2, 2)
verify.Greater(3, 2)
# These will fail with an AssertionError
verify.Truthy(0)
verify.Equal(2, 3)
verify.Greater(2, 3)
Validators
All of the validators in verify are callables that can be used in two contexts:
By themselves as in Equal(a, b) which will raise an AssertionError if false.
In combination with Except as in Expect(a, Equal(b)).
The available validators are:
Validator |
Description |
---|---|
Not |
Assert the negation of a callable |
Equal |
Assert that a == b |
Greater |
Assert that a > b |
GreaterEqual |
Assert that a >= b |
Less |
Assert that a < b |
LessEqual |
Assert that a <= b |
Is |
Assert that a is b |
In |
Assert that a in b |
InstanceOf |
Assert that isinstance(a, b) |
Truthy |
Assert that bool(a) |
Falsy |
Assert that not bool(a) |
IsNone |
Assert that a is None |
For more details, please see the full documentation at http://verify.readthedocs.org.
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
Built Distribution
Hashes for verify-0.0.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9449c721bdae222ade50e7d486bdb1222e9c0b240d12c56d5eb35827604bd628 |
|
MD5 | 6c68a4ac5d3c708b8a2db298e9da51f2 |
|
BLAKE2b-256 | d5ce17bef81d706c639540b0ef54aa6ebc74ba496cc98969841ba1fe12df1583 |