diff options
Diffstat (limited to 'gerbonara/gerber/tests/conftest.py')
-rw-r--r-- | gerbonara/gerber/tests/conftest.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/gerbonara/gerber/tests/conftest.py b/gerbonara/gerber/tests/conftest.py index c6a1221..131ca28 100644 --- a/gerbonara/gerber/tests/conftest.py +++ b/gerbonara/gerber/tests/conftest.py @@ -1,4 +1,6 @@ +from pathlib import Path + import pytest from .image_support import ImageDifference @@ -8,7 +10,8 @@ def pytest_assertrepr_compare(op, left, right): diff = left if isinstance(left, ImageDifference) else right return [ f'Image difference assertion failed.', - f' Calculated difference: {diff}', ] + f' Calculated difference: {diff}', + f' Histogram: {diff.histogram}', ] # store report in node object so tmp_gbr can determine if the test failed. @pytest.hookimpl(tryfirst=True, hookwrapper=True) @@ -17,3 +20,11 @@ def pytest_runtest_makereport(item, call): rep = outcome.get_result() setattr(item, f'rep_{rep.when}', rep) +fail_dir = Path('gerbonara_test_failures') +def pytest_sessionstart(session): + if not hasattr(session.config, 'workerinput'): # on worker + return + + # on coordinator + for f in chain(fail_dir.glob('*.gbr'), fail_dir.glob('*.png')): + f.unlink() |