Add --disable-xfa flag to test_runner.py test_runner.py then passes a flag of the same name on each run of pdfium_test. Bug: pdfium:1412 Change-Id: I5b192cd390025752fee37b614dea46cc7062fbaa Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/63250 Commit-Queue: Daniel Hosseinian <dhoss@chromium.org> Reviewed-by: Lei Zhang <thestig@chromium.org>
diff --git a/testing/tools/suppressor.py b/testing/tools/suppressor.py index a2e39a1..70eef99 100755 --- a/testing/tools/suppressor.py +++ b/testing/tools/suppressor.py
@@ -11,10 +11,11 @@ class Suppressor: - def __init__(self, finder, feature_string, js_disabled): + def __init__(self, finder, feature_string, js_disabled, xfa_disabled): feature_vector = feature_string.strip().split(",") self.has_v8 = not js_disabled and "V8" in feature_vector - self.has_xfa = not js_disabled and "XFA" in feature_vector + self.has_xfa = (not js_disabled and not xfa_disabled and + "XFA" in feature_vector) self.suppression_set = self._LoadSuppressedSet('SUPPRESSIONS', finder) self.image_suppression_set = self._LoadSuppressedSet( 'SUPPRESSIONS_IMAGE_DIFF', finder)
diff --git a/testing/tools/test_runner.py b/testing/tools/test_runner.py index 3a055ba..d3640d6 100644 --- a/testing/tools/test_runner.py +++ b/testing/tools/test_runner.py
@@ -161,6 +161,9 @@ if self.options.disable_javascript: cmd_to_run.append('--disable-javascript') + if self.options.disable_xfa: + cmd_to_run.append('--disable-xfa') + cmd_to_run.append(pdf_path) subprocess.check_call(cmd_to_run, stdout=outfile) @@ -206,6 +209,9 @@ if self.options.disable_javascript: cmd_to_run.append('--disable-javascript') + if self.options.disable_xfa: + cmd_to_run.append('--disable-xfa') + if self.options.reverse_byte_order: cmd_to_run.append('--reverse-byte-order') @@ -267,6 +273,12 @@ help='Prevents JavaScript from executing in PDF files.') parser.add_option( + '--disable-xfa', + action="store_true", + dest="disable_xfa", + help='Prevents processing XFA forms.') + + parser.add_option( '--gold_properties', default='', dest="gold_properties", @@ -346,7 +358,8 @@ self.feature_string = subprocess.check_output( [self.pdfium_test_path, '--show-config']) self.test_suppressor = suppressor.Suppressor( - finder, self.feature_string, self.options.disable_javascript) + finder, self.feature_string, self.options.disable_javascript, + self.options.disable_xfa) self.image_differ = pngdiffer.PNGDiffer(finder, self.options.reverse_byte_order) error_message = self.image_differ.CheckMissingTools(