v8/tools/testrunner/outproc/mkgrokdump.py
Vadim Gorbachev 16b6266649 Python2 compatibility: fix flake8 report F632 F821
use '!=' instead of 'is not' with str
FileNotFoundError isn't exist in python2.7, use IOError instead.


Bug: chromium:948812
Change-Id: I241ff8a9321d612f2371a2a2e2deae948fa180e5
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1549168
Commit-Queue: Sergiy Belozorov <sergiyb@chromium.org>
Reviewed-by: Sergiy Belozorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#60661}
2019-04-05 16:24:19 +00:00

32 lines
1.0 KiB
Python

# Copyright 2018 the V8 project authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import difflib
from . import base
class OutProc(base.OutProc):
def __init__(self, expected_outcomes, expected_path):
super(OutProc, self).__init__(expected_outcomes)
self._expected_path = expected_path
def _is_failure_output(self, output):
with open(self._expected_path) as f:
expected = f.read()
expected_lines = expected.splitlines()
actual_lines = output.stdout.splitlines()
diff = difflib.unified_diff(expected_lines, actual_lines, lineterm="",
fromfile="expected_path")
diffstring = '\n'.join(diff)
if diffstring != "":
if "generated from a non-shipping build" in output.stdout:
return False
if not "generated from a shipping build" in output.stdout:
output.stdout = "Unexpected output:\n\n" + output.stdout
return True
output.stdout = diffstring
return True
return False