Skip to main content

Expecter Gadget, a better expectation (assertion) library

Project description

======
BASICS
======

Expecter Gadget helps you to write assertions. Never again will you forget
which is expected and which is actual!

Basic expectations are easy:

>>> from expecter import expect
>>> expect('some' + 'thing') == 'something'
expect('something')
>>> expect(1) > 100
Traceback (most recent call last):
...
AssertionError: Expected something greater than 100 but got 1

Just read the expectations like a sentence. "expect(2) == 1 + 1" reads as
"Expect 2 to equal 1 + 1". Obviously, the expectation is about 2, and it's
being compared to 1 + 1. No ambiguity!

==========
EXCEPTIONS
==========

Expectations about exceptions use the "with" statement. Everything is good if
the expected exception is raised:

>>> from __future__ import with_statement
>>> with expect.raises(KeyError):
... {}[123]

If it's not raised, Expecter Gadget will raise an AssertionError:

>>> with expect.raises(KeyError):
... pass
Traceback (most recent call last):
...
AssertionError: Expected an exception of type KeyError but got none

Exceptions that don't match the expected one will not be swallowed, so your
test will error as you expect:

>>> from __future__ import with_statement
>>> with expect.raises(NameError):
... {}[123]
Traceback (most recent call last):
...
KeyError: 123

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

expecter-0.1.2.tar.gz (2.2 kB view details)

Uploaded Source

File details

Details for the file expecter-0.1.2.tar.gz.

File metadata

  • Download URL: expecter-0.1.2.tar.gz
  • Upload date:
  • Size: 2.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for expecter-0.1.2.tar.gz
Algorithm Hash digest
SHA256 115009dc1ad0fc69dcbe91dab56b4c9b3b144a04da34c0dc5bcd6e786f67117c
MD5 a75f264f53dcce541b9d0c694bd18bea
BLAKE2b-256 2b4fe72a23e66949c689886a174ef0f644a1de994d3b7ca11488b45d4d25e2b5

See more details on using hashes here.

Supported by

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