Skip to main content

A painless assertion library for Python.

Project description

version travis coveralls license

Verify is a painless assertion library for Python.

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:

  1. By themselves as in Equal(a, b) which will raise an AssertionError if false.

  2. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

verify-0.0.1.tar.gz (5.3 kB view hashes)

Uploaded Source

Built Distribution

verify-0.0.1-py2.py3-none-any.whl (6.2 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page