Index: testing/tools/run_corpus_tests.py |
diff --git a/testing/tools/run_corpus_tests.py b/testing/tools/run_corpus_tests.py |
index 05be76ef3786a1c9ce98024a3c7ef0fae9c497d9..db43c1506ee45b67787087482df7df7a4e037b17 100755 |
--- a/testing/tools/run_corpus_tests.py |
+++ b/testing/tools/run_corpus_tests.py |
@@ -15,6 +15,12 @@ import sys |
# x_path - "path/to/a/b/c/x.ext" |
# c_dir - "path/to/a/b/c" |
+def extract_suppressions(filename): |
+ with open(filename) as f: |
+ suppressions = [y for y in [ |
+ x.split('#')[0].strip() for x in f.readlines()] if y] |
+ return suppressions |
+ |
def test_one_file(input_filename, source_dir, working_dir, |
pdfium_test_path, pdfium_diff_path): |
input_root, _ = os.path.splitext(input_filename) |
@@ -45,6 +51,12 @@ def test_one_file(input_filename, source_dir, working_dir, |
return True |
def main(): |
+ os_name = 'linux' |
Lei Zhang
2015/03/25 20:39:20
Can we explicitly check for startswith('linux'), s
Tom Sepez
2015/03/25 20:49:35
Done.
|
+ if sys.platform.startswith('win'): |
+ os_name = 'win' |
+ elif sys.platform.startswith('darwin'): |
+ os_name = 'mac' |
+ |
parser = optparse.OptionParser() |
parser.add_option('--build-dir', default=os.path.join('out', 'Debug'), |
help='relative path from the base source directory') |
@@ -76,7 +88,7 @@ def main(): |
# Compiled binaries are found under the build path. |
pdfium_test_path = os.path.join(build_dir, 'pdfium_test') |
pdfium_diff_path = os.path.join(build_dir, 'pdfium_diff') |
- if sys.platform.startswith('win'): |
+ if os_name == 'win': |
pdfium_test_path = pdfium_test_path + '.exe' |
pdfium_diff_path = pdfium_diff_path + '.exe' |
# TODO(tsepez): Mac may require special handling here. |
@@ -86,9 +98,12 @@ def main(): |
if not os.path.exists(working_dir): |
os.makedirs(working_dir) |
- with open(os.path.join(testing_dir, 'SUPPRESSIONS')) as f: |
- suppression_list = [y for y in [ |
- x.split('#')[0].strip() for x in f.readlines()] if y] |
+ suppression_list = extract_suppressions( |
+ os.path.join(testing_dir, 'SUPPRESSIONS')) |
+ |
+ platform_suppression_filename = 'SUPPRESSIONS_%s' % os_name |
+ platform_suppression_list = extract_suppressions( |
+ os.path.join(testing_dir, platform_suppression_filename)) |
# test files are under .../pdfium/testing/corpus. |
failures = [] |
@@ -102,6 +117,11 @@ def main(): |
if input_filename in suppression_list: |
print "Not running %s, found in SUPPRESSIONS file" % input_filename |
continue |
+ if input_filename in platform_suppression_list: |
+ print ("Not running %s, found in %s file" % |
+ (input_filename, platform_suppression_filename)) |
+ continue |
+ |
if not test_one_file(input_filename, source_dir, working_dir, |
pdfium_test_path, pdfium_diff_path): |
failures.append(input_path) |