[pytest]
python_files = test_*.py *_test.py scenario_*.py
norecursedirs = *.egg-info .git .cache .ipynb_checkpoints htmlcov
addopts = --doctest-modules --durations=20  --cov-config pytest.ini
markers =
       longrun: tests only run at night since they have large execution time
       notebook: mark for notebooks
# these warnings all come from third party libraries.
filterwarnings =
       ignore:an integer is required:DeprecationWarning
       ignore:\s*load will be removed, use:PendingDeprecationWarning
       ignore:the imp module is deprecated in favour of importlib:DeprecationWarning
       ignore:.*is a deprecated alias for the builtin `bool`:DeprecationWarning
       ignore:'contextfilter' is renamed to 'pass_context':DeprecationWarning
       ignore:Using or importing the ABCs from 'collections' instead of from 'collections.abc':DeprecationWarning
       ignore:Animation was deleted without rendering anything:UserWarning

[run]
branch = True
source = pystencils
         pystencils_tests

omit = doc/*
       pystencils_tests/*
       setup.py
       conftest.py
       versioneer.py
       pystencils/jupytersetup.py
       pystencils/cpu/msvc_detection.py
       pystencils/sympy_gmpy_bug_workaround.py
       pystencils/cache.py
       pystencils/pacxx/benchmark.py
       pystencils/_version.py
       venv/

[report]
exclude_lines =
       # Have to re-enable the standard pragma
       pragma: no cover

       def __repr__
       def _repr_html_

       # Don't complain if tests don't hit defensive assertion code:
       raise AssertionError
       raise NotImplementedError
       NotImplementedError()
       #raise ValueError

       # Don't complain if non-runnable code isn't run:
       if 0:
       if False:
       if __name__ == .__main__.:

skip_covered = True
fail_under = 85

[html]
directory = coverage_report