Skip to content

Commit 70b5d55

Browse files
committed
Fix figures in HTML summary
1 parent f1b6cb3 commit 70b5d55

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

pytest_mpl/plugin.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -483,7 +483,11 @@ def compare_image_to_baseline(self, item, fig, result_dir, summary=None):
483483

484484
test_image = (result_dir / f"result.{ext}").absolute()
485485
fig.savefig(str(test_image), **savefig_kwargs)
486-
summary['result_image'] = test_image.relative_to(self.results_dir).as_posix()
486+
487+
if ext in ['png', 'svg']: # Use original file
488+
summary['result_image'] = test_image.relative_to(self.results_dir).as_posix()
489+
else:
490+
summary['result_image'] = (result_dir / f"result_{ext}.png").relative_to(self.results_dir).as_posix()
487491

488492
if not os.path.exists(baseline_image_ref):
489493
summary['status'] = 'failed'
@@ -500,7 +504,11 @@ def compare_image_to_baseline(self, item, fig, result_dir, summary=None):
500504
# copy to our tmpdir to be sure to keep them in case of failure
501505
baseline_image = (result_dir / f"baseline.{ext}").absolute()
502506
shutil.copyfile(baseline_image_ref, baseline_image)
503-
summary['baseline_image'] = baseline_image.relative_to(self.results_dir).as_posix()
507+
508+
if ext in ['png', 'svg']: # Use original file
509+
summary['baseline_image'] = baseline_image.relative_to(self.results_dir).as_posix()
510+
else:
511+
summary['baseline_image'] = (result_dir / f"baseline_{ext}.png").relative_to(self.results_dir).as_posix()
504512

505513
# Compare image size ourselves since the Matplotlib
506514
# exception is a bit cryptic in this case and doesn't show
@@ -520,6 +528,7 @@ def compare_image_to_baseline(self, item, fig, result_dir, summary=None):
520528
return error_message
521529

522530
results = compare_images(str(baseline_image), str(test_image), tol=tolerance, in_decorator=True)
531+
523532
summary['tolerance'] = tolerance
524533
if results is None:
525534
summary['status'] = 'passed'
@@ -530,8 +539,7 @@ def compare_image_to_baseline(self, item, fig, result_dir, summary=None):
530539
summary['status'] = 'failed'
531540
summary['image_status'] = 'diff'
532541
summary['rms'] = results['rms']
533-
diff_image = (result_dir / 'result-failed-diff.png').absolute()
534-
summary['diff_image'] = diff_image.relative_to(self.results_dir).as_posix()
542+
summary['diff_image'] = Path(results['diff']).relative_to(self.results_dir).as_posix()
535543
template = ['Error: Image files did not match.',
536544
'RMS Value: {rms}',
537545
'Expected: \n {expected}',

0 commit comments

Comments
 (0)