Better testing with expecter and pytest.
Project description
pytest-expecter
This is a fork of garybernhardt/expecter that hides the internal stack trace for pytest.
Overview
This lets you write tests (using ropez/pytest-describe) like this:
from expecter import expect
def describe_foobar():
def it_can_pass():
expect(2 + 3) == 5
def it_can_fail():
expect(2 + 3) == 6
and instead of getting output like this:
=================================== FAILURES ===================================
_________________________ describe_foobar.it_can_fail __________________________
def it_can_fail():
> expect(2 + 3) == 6
test_foobar.py:14:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = expect(5), other = 6
def __eq__(self, other):
msg = 'Expected %s but got %s' % (repr(other), repr(self._actual))
if (isinstance(other, basestring) and
isinstance(self._actual, basestring)):
msg += normalized_diff(other, self._actual)
elif len(repr(self._actual)) > 74:
msg += normalized_diff(pprint.pformat(other),
pprint.pformat(self._actual))
> assert self._actual == other, msg
E AssertionError: Expected 6 but got 5
env/lib/python3.5/site-packages/expecter.py:57: AssertionError
====================== 1 failed, 1 passed in 2.67 seconds ======================
getting output like this:
=================================== FAILURES ===================================
_________________________ describe_foobar.it_can_fail __________________________
def it_can_fail():
> expect(2 + 3) == 6
E AssertionError: Expected 6 but got 5
test_foobar.py:14: AssertionError
====================== 1 failed, 1 passed in 2.67 seconds ======================
Installation
pip install pytest-expecter
Revision History
1.0 (2017/12/03)
Initial stable release.
0.2.2.post7 (2017/12/02)
Added automatic conversion from OrderedDict to dict on Python 3.6 to create readable diffs.
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
File details
Details for the file pytest-expecter-1.0.post1.tar.gz
.
File metadata
- Download URL: pytest-expecter-1.0.post1.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67fe8944a3fc7300145f42f36628e8e592c064d9e02614473fe59e2e62866547 |
|
MD5 | b05c05f1aeecef5d7b5cc172630d4966 |
|
BLAKE2b-256 | b552dbf31e6d4b200d48c45530f73f7e15487e7907b371a30914b81ec34d0af3 |
File details
Details for the file pytest_expecter-1.0.post1-py2-none-any.whl
.
File metadata
- Download URL: pytest_expecter-1.0.post1-py2-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | aede3a71adf77a6ef06603794d47f965684cf01e3e226bc5df68cf80b416012d |
|
MD5 | c62abb4a4de74e40bd7e7be3d49302fe |
|
BLAKE2b-256 | d9e202a3af5529d5f7b694afd21bdc87c20d80f0c2f52d65669d356ec80fc43c |