From: Carl Worth Date: Mon, 9 Apr 2012 18:24:52 +0000 (-0700) Subject: Don't show images where there is no difference. X-Git-Url: https://git.cworth.org/git?p=apitrace;a=commitdiff_plain;h=78329e204346bdce54d3bf007edc53f0c1ddbc78 Don't show images where there is no difference. This makes for a much more compact view for the common case where image mismatches are rare, and makes the mismatches stand out more making them easier to notice. To avoid hiding information irretrievably, the filename is made into a link to the image so that it can be easily seen if desired. Signed-off-by: José Fonseca --- diff --git a/scripts/snapdiff.py b/scripts/snapdiff.py index 37fe889..61814d8 100755 --- a/scripts/snapdiff.py +++ b/scripts/snapdiff.py @@ -170,6 +170,10 @@ def main(): '--overwrite', action="store_true", dest="overwrite", default=False, help="overwrite images") + optparser.add_option( + '--show-all', + action="store_true", dest="show_all", default=False, + help="show all images, including similar ones") (options, args) = optparser.parse_args(sys.argv[1:]) @@ -200,22 +204,23 @@ def main(): delta_image = "%s.diff.png" % (root, ) if os.path.exists(ref_image) and os.path.exists(src_image): comparer = Comparer(ref_image, src_image, options.alpha) - if options.overwrite \ - or not os.path.exists(delta_image) \ - or (os.path.getmtime(delta_image) < os.path.getmtime(ref_image) \ - and os.path.getmtime(delta_image) < os.path.getmtime(src_image)): - - comparer.write_diff(delta_image, fuzz=options.fuzz) - if comparer.ae(fuzz=options.fuzz) == 0: + match = comparer.ae(fuzz=options.fuzz) == 0 + if match: bgcolor = '#20ff20' else: failures += 1 bgcolor = '#ff2020' html.write(' \n') - html.write(' %s\n' % (bgcolor, image)) - surface(html, ref_image) - surface(html, src_image) - surface(html, delta_image) + html.write(' %s\n' % (bgcolor, ref_image, image)) + if not match or options.show_all: + if options.overwrite \ + or not os.path.exists(delta_image) \ + or (os.path.getmtime(delta_image) < os.path.getmtime(ref_image) \ + and os.path.getmtime(delta_image) < os.path.getmtime(src_image)): + comparer.write_diff(delta_image, fuzz=options.fuzz) + surface(html, ref_image) + surface(html, src_image) + surface(html, delta_image) html.write(' \n') html.flush() html.write(' \n')