Index: testing/tools/suppressor.py |
diff --git a/testing/tools/suppressor.py b/testing/tools/suppressor.py |
new file mode 100755 |
index 0000000000000000000000000000000000000000..fff9bc8381f6bca6f6efb727379d7ca32239034a |
--- /dev/null |
+++ b/testing/tools/suppressor.py |
@@ -0,0 +1,34 @@ |
+#!/usr/bin/env python |
+# Copyright 2015 The PDFium 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 os |
+ |
+import common |
+ |
+class Suppressor: |
+ SUPPRESSIONS_FILENAME = 'SUPPRESSIONS' |
+ PLATFORM_SUPPRESSIONS_FILENAME = 'SUPPRESSIONS_%s' % common.os_name() |
+ |
+ def __init__(self, finder): |
+ testing_dir = finder.TestingDir() |
+ self.suppression_list = self._ExtractSuppressions( |
+ os.path.join(testing_dir, self.SUPPRESSIONS_FILENAME)) |
+ self.platform_suppression_list = self._ExtractSuppressions( |
+ os.path.join(testing_dir, self.PLATFORM_SUPPRESSIONS_FILENAME)) |
+ |
+ def _ExtractSuppressions(self, suppressions_filename): |
+ with open(suppressions_filename) as f: |
+ return [y for y in [x.split('#')[0].strip() for x in f.readlines()] if y] |
+ |
+ def IsSuppressed(self, input_filename): |
+ if input_filename in self.suppression_list: |
+ print ("Not running %s, found in %s file" % |
+ (input_filename, self.SUPPRESSIONS_FILENAME)) |
+ return True |
+ if input_filename in self.platform_suppression_list: |
+ print ("Not running %s, found in %s file" % |
+ (input_filename, self.PLATFORM_SUPPRESSIONS_FILENAME)) |
+ return True |
+ return False |