Expressive and extensible TDD/BDD assertion library for Python


License
Apache-2.0
Install
pip install expects==0.9.0

Documentation

Expects

Latest version Docs License Build status PyPI versions

Expects is an expressive and extensible TDD/BDD assertion library for Python. Expects can be extended by defining new matchers.

Usage

Just import the expect callable and the built-in matchers and start writing test assertions.

from expects import *

expect([]).to(be_empty)

expect(False).not_to(be_true)

expect({
    'name': 'Jack',
    'email': 'jack@example.com'
}).to(have_key('name', match('\w+')))

expect(str).to(have_property('split') & be_callable)

expect(lambda: foo).to(raise_error(NameError))

expect('Foo').to(equal('Bar') | equal('Foo'))

Installation

You can install the last stable release of Expects from PyPI using pip or easy_install.

$ pip install expects

Also you can install the latest sources from Github.

$ pip install -e git+git://github.com/jaimegildesagredo/expects.git#egg=expects

Specs

To run the Expects specs you should install the development requirements and then run mamba.

$ pip install -r test-requirements.txt
$ mamba

Changes

See Changes.

3rd Party Matchers

See 3rd-Party Matchers list.