Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 #!/usr/bin/env python | |
| 2 # Copyright 2014 The PDFium Authors. All rights reserved. | |
|
Lei Zhang
2015/02/10 23:09:29
2015
Tom Sepez
2015/02/10 23:33:31
Done.
| |
| 3 # Use of this source code is governed by a BSD-style license that can be | |
| 4 # found in the LICENSE file. | |
| 5 | |
| 6 import optparse | |
| 7 import os | |
| 8 import re | |
| 9 import subprocess | |
| 10 import sys | |
| 11 | |
| 12 def generate_and_test(bin_filename, input_file_and_ext, source_dir, build_dir): | |
| 13 try: | |
| 14 source_filename = os.path.join(source_dir, input_file_and_ext) | |
| 15 (input_filename, input_extension) = os.path.splitext(input_file_and_ext) | |
| 16 expected_filename = os.path.join(source_dir, input_filename + '_expected.txt ') | |
|
Lei Zhang
2015/02/10 23:09:29
over 80 chars
Tom Sepez
2015/02/10 23:33:32
Done.
| |
| 17 working_dir = os.path.join(build_dir, 'gen', 'pdfium', source_dir) | |
| 18 pdf_filename = os.path.join(working_dir, input_filename + '.pdf') | |
| 19 txt_filename = os.path.join(working_dir, input_filename + '.txt') | |
| 20 subprocess.check_call(['testing/tools/fixup_pdf_template.py', | |
|
Lei Zhang
2015/02/10 23:09:29
Not sure if this works on Windows.
You may want t
Tom Sepez
2015/02/10 23:33:31
A codesearch shows a bunch of these in our existin
| |
| 21 '--build-dir=' + build_dir, source_filename]) | |
| 22 with open(txt_filename, 'w') as outfile: | |
| 23 subprocess.check_call([bin_filename, pdf_filename], stdout=outfile) | |
| 24 subprocess.check_call(['diff', expected_filename, txt_filename]) | |
|
Lei Zhang
2015/02/10 23:09:30
Not sure if this works on Windows either.
Tom Sepez
2015/02/10 23:33:31
Ditto.
| |
| 25 except subprocess.CalledProcessError as e: | |
| 26 print "FAILURE: " + input_file_and_ext + "; " + str(e) | |
| 27 | |
| 28 def main(): | |
| 29 parser = optparse.OptionParser() | |
| 30 parser.add_option('--build-dir', | |
| 31 default=os.path.join('out' , 'Debug')) | |
| 32 parser.add_option('--source-dir', | |
|
Lei Zhang
2015/02/10 23:09:30
It might be good to make this /path/to/chrome_chec
Tom Sepez
2015/02/10 23:33:31
Actually, in a standlone build, there isn't any /s
Lei Zhang
2015/02/11 00:03:21
Oh right, this is pdfium. In any case, I think it'
| |
| 33 default=os.path.join('testing', 'resources', 'javascript')) | |
| 34 (options, args) = parser.parse_args() | |
| 35 bin_filename = os.path.join(options.build_dir, 'pdfium_test') | |
|
Lei Zhang
2015/02/10 23:09:29
|bin_filename| -> |pdfium_test_path| ?
I tend to
Tom Sepez
2015/02/10 23:33:31
Done.
| |
| 36 if (sys.platform.startswith('win')): | |
|
Lei Zhang
2015/02/10 23:09:29
Should there be a TODO here for Mac?
Lei Zhang
2015/02/10 23:09:30
No need for the outer parenthesis here either. Sty
Tom Sepez
2015/02/10 23:33:31
Added.
Tom Sepez
2015/02/10 23:33:31
Much better.
| |
| 37 bin_filename = bin_filename + '.exe' | |
| 38 input_file_re = re.compile('^[a-zA-Z0-9_.]+[.]in$') | |
| 39 for arg in os.listdir(options.source_dir): | |
|
Lei Zhang
2015/02/10 23:09:29
Rename |arg| to |pdf_source| ?
Tom Sepez
2015/02/10 23:33:31
Done.
| |
| 40 if not input_file_re.match(arg): | |
| 41 continue | |
| 42 generate_and_test(bin_filename, arg, options.source_dir, options.build_dir) | |
| 43 return 0 | |
| 44 | |
| 45 if __name__ == '__main__': | |
| 46 sys.exit(main()) | |
| OLD | NEW |