Commit f66b268f authored by Rakib M. Hasan's avatar Rakib M. Hasan Committed by Commit Bot

[blinkpy] Fix issue where blinkpy is inaccurrately reporting that image diff passed

Bug: chromium:1012202
Change-Id: I47f1a5a8f49f685264a6f963d9043aff6d1cd42c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1858426Reviewed-by: default avatarDirk Pranke <dpranke@chromium.org>
Commit-Queue: Rakib Hasan <rmhasan@google.com>
Cr-Commit-Position: refs/heads/master@{#705599}
parent 8e5b0a78
...@@ -501,17 +501,23 @@ class SingleTestRunner(object): ...@@ -501,17 +501,23 @@ class SingleTestRunner(object):
if driver_output.image_hash != expected_driver_output.image_hash: if driver_output.image_hash != expected_driver_output.image_hash:
diff, err_str = self._port.diff_image( diff, err_str = self._port.diff_image(
expected_driver_output.image, driver_output.image) expected_driver_output.image, driver_output.image)
if diff:
driver_output.image_diff = diff
if err_str: if err_str:
_log.warning(' %s : %s', self._test_name, err_str) _log.error(' %s : %s', self._test_name, err_str)
driver_output.error = (driver_output.error or '') + err_str driver_output.error = (driver_output.error or '') + err_str
if diff or err_str:
return [
test_failures.FailureImageHashMismatch(
driver_output, expected_driver_output)]
else: else:
# See https://bugs.webkit.org/show_bug.cgi?id=69444 for why this isn't a full failure. # See https://bugs.webkit.org/show_bug.cgi?id=69444 for why this
# isn't a full failure.
_log.warning( _log.warning(
' %s -> pixel hash failed (but diff passed)', self._test_name) ' %s -> pixel hash failed (but diff passed)', self._test_name)
driver_output.image_diff = diff
if err_str or diff:
return [test_failures.FailureImageHashMismatch(
driver_output, expected_driver_output, diff)]
return [] return []
...@@ -619,7 +625,7 @@ class SingleTestRunner(object): ...@@ -619,7 +625,7 @@ class SingleTestRunner(object):
reference_filename)) reference_filename))
elif err_str: elif err_str:
# TODO(rmhasan) Should we include this error message in the artifacts ? # TODO(rmhasan) Should we include this error message in the artifacts ?
_log.error(err_str) _log.error(' %s : %s', self._test_name, err_str)
else: else:
_log.warning(" %s -> ref test hashes didn't match but diff passed", self._test_name) _log.warning(" %s -> ref test hashes didn't match but diff passed", self._test_name)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment