Skip to main content

A pytest plugin that allows multiple failures per test.

Project description

pytest-check

A pytest plugin that allows multiple failures per test.


This pytest plugin was a rewrite and a rename of pytest-expect.

Installation

From PPI:

$ pip install pytest-check

Or from github.

$ pip install git+https://github.com/okken/pytest-check

Usage

For example test case code:

import pytest_check as check


def test_example():
    a = 1
    b = 2
    c = [2, 4, 6]
    check.greater(a, b)
    check.less_equal(b, a)
    check.is_in(a, c, "Is 1 in the list")
    check.is_not_in(b, c, "make sure 2 isn't in list")

Test results:

=================================== FAILURES ===================================
_________________________________ test_example _________________________________
FAILURE:
assert 1 > 2
  test_check.py, line 14, in test_example() -> check.greater(a, b)
FAILURE:
assert 2 <= 1
  test_check.py, line 15, in test_example() -> check.less_equal(b, a)
FAILURE: Is 1 in the list
assert 1 in [2, 4, 6]
  test_check.py, line 16, in test_example() -> check.is_in(a, c, "Is 1 in the list")
FAILURE: make sure 2 isn't in list
assert 2 not in [2, 4, 6]
  test_check.py, line 17, in test_example() -> check.is_not_in(b, c, "make sure 2 isn't in list")
------------------------------------------------------------
Failed Checks: 4
=========================== 1 failed in 0.11 seconds ===========================

validation functions

  • check.equal - a == b
  • check.not_equal - a != b
  • check.is_true - bool(x) is True
  • check.is_false - bool(x) is False
  • check.is_none - x is None
  • check.is_not_none - x is not None
  • check.is_in - a in b
  • check.not_in - a not in b
  • check.is_instance - isinstance(a, b)
  • check.not_is_instance - not isinstance(a, b)
  • check.almost_equal - a == pytest.approx(b, rel, abs) see at: pytest.approx
  • check.not_almost_equal - a != pytest.approx(b, rel, abs) see at: pytest.approx
  • check.greater - a > b
  • check.greater_equal - a >= b
  • check.less - a < b
  • check.less_equal - a <= b

Contributing

Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.

License

Distributed under the terms of the MIT license, "pytest-check" is free and open source software

Issues

If you encounter any problems, please file an issue along with a detailed description.

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

pytest-check-0.3.1.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

pytest_check-0.3.1-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file pytest-check-0.3.1.tar.gz.

File metadata

  • Download URL: pytest-check-0.3.1.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.0

File hashes

Hashes for pytest-check-0.3.1.tar.gz
Algorithm Hash digest
SHA256 47842861cbc873c2dafe85d35e4b56440cb34d22d769e3dd0f4622d59a4e1a51
MD5 c3c7a35d7efddb63fb49b3f1b488b689
BLAKE2b-256 24d7f2c6226fa55aaea0b5f4617f5fcbd2061c8e83261587ee434f614d169e8f

See more details on using hashes here.

File details

Details for the file pytest_check-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: pytest_check-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.0

File hashes

Hashes for pytest_check-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d2f7314e1f58d5810c9b0bc80d5ae1a24de6d874355446e739b9d89594ecc9ee
MD5 2f193e10fa3ad45e610e9722469cf5ab
BLAKE2b-256 58d6f98ae107890ce2af110d6866a7d892828f4a50c1101ad9d3f639d6251fc9

See more details on using hashes here.

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