Commit 5e50857e authored by Michael Achenbach's avatar Michael Achenbach Committed by Commit Bot

[foozzie] Suppress test cases with async in slow-path mode

NOTRY=true
TBR=gsathya@chromium.org

Bug: chromium:800651
Change-Id: I72717fcd694609132b76431c13c26fb3f79432dd
Reviewed-on: https://chromium-review.googlesource.com/860926Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#50509}
parent 29e4696a
......@@ -65,16 +65,25 @@ IGNORE_SOURCES = {
],
}
# Ignore by test case pattern. Map from bug->regexp.
# Ignore by test case pattern. Map from config->bug->regexp. Config '' is used
# to match all configurations. Otherwise use either a compiler configuration,
# e.g. ignition or validate_asm or an architecture, e.g. x64 or ia32.
# Bug is preferred to be a crbug.com/XYZ, but can be any short distinguishable
# label.
# Regular expressions are assumed to be compiled. We use regexp.search.
IGNORE_TEST_CASES = {
'slow_path': {
'crbug.com/800651':
re.compile(r'async', re.S),
},
'slow_path_opt': {
'crbug.com/800651':
re.compile(r'async', re.S),
},
}
# Ignore by output pattern. Map from config->bug->regexp. Config '' is used
# to match all configurations. Otherwise use either a compiler configuration,
# e.g. fullcode or validate_asm or an architecture, e.g. x64 or ia32 or a
# comma-separated combination, e.g. x64,fullcode, for more specific
# suppressions.
# Ignore by output pattern. Map from config->bug->regexp. See IGNORE_TEST_CASES
# on how to specify config keys.
# Bug is preferred to be a crbug.com/XYZ, but can be any short distinguishable
# label.
# Regular expressions are assumed to be compiled. We use regexp.search.
......@@ -244,16 +253,16 @@ class Suppression(object):
return None
def ignore_by_metadata(self, metadata):
return False
return None
def ignore_by_content(self, testcase):
return False
return None
def ignore_by_output1(self, output):
return False
return None
def ignore_by_output2(self, output):
return False
return None
class V8Suppression(Suppression):
......@@ -283,17 +292,18 @@ class V8Suppression(Suppression):
# Search the whole test case if preamble can't be found. E.g. older
# already minimized test cases might have dropped the delimiter line.
content = testcase
for bug, exp in IGNORE_TEST_CASES.iteritems():
if exp.search(content):
return bug
return False
for key in ['', self.arch1, self.arch2, self.config1, self.config2]:
for bug, exp in IGNORE_TEST_CASES.get(key, {}).iteritems():
if exp.search(content):
return bug
return None
def ignore_by_metadata(self, metadata):
for bug, sources in IGNORE_SOURCES.iteritems():
for source in sources:
if source in metadata['sources']:
return bug
return False
return None
def ignore_by_output1(self, output):
return self.ignore_by_output(output, self.arch1, self.config1)
......@@ -307,16 +317,8 @@ class V8Suppression(Suppression):
if exp.search(output):
return bug
return None
bug = check(IGNORE_OUTPUT.get('', {}))
if bug:
return bug
bug = check(IGNORE_OUTPUT.get(arch, {}))
if bug:
return bug
bug = check(IGNORE_OUTPUT.get(config, {}))
if bug:
return bug
bug = check(IGNORE_OUTPUT.get('%s,%s' % (arch, config), {}))
if bug:
return bug
for key in ['', arch, config]:
bug = check(IGNORE_OUTPUT.get(key, {}))
if bug:
return bug
return None
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