easy assertion with expected results saved to yaml files
Project description
Easy assertion with expected results saved to yaml files.
Features
Creates yaml files for expected test results , a.k.a. tape.
Creates separate tape for each test file. Each tape stores results for all tests that have utilised tape fixture.
supports parametrized tests, as long as all parameters can be jsonified.
Hash functions are used to store and identify params.
Expected results are stored as dictionaries in yaml, so that they can be compared using tolerances.
Requirements
python >= 3.6
Installation
You can install “pytest-tape” via pip from PyPI:
$ pip install pytest-tape
Usage
Just use tape
fixture in any of the tests and assert dictionary of results with it.
def test_correctness(tape):
result_of_calc = {
'a': [1,2,3], 'b':'Another_Random_Result', 'c': 45.99
}
assert tape == result_of_calc
First time the tests fails, tape writes to yaml file. Second and all subsequent times you run the test - it compares the result with what is on tape.
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-tape” is free and open source software
Issues
If you encounter any problems, please file an issue along with a detailed description.
Acknowledgments
This pytest plugin was generated with Cookiecutter along with @hackebrot’s cookiecutter-pytest-plugin template.
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.