| Index: testing/tools/run_corpus_tests.py
|
| diff --git a/testing/tools/run_corpus_tests.py b/testing/tools/run_corpus_tests.py
|
| index b6cbff75377fe696575847d9aac080f64e429b9f..29f23b504a5caefbbf2903e23308b48888809a09 100755
|
| --- a/testing/tools/run_corpus_tests.py
|
| +++ b/testing/tools/run_corpus_tests.py
|
| @@ -104,14 +104,25 @@ def main():
|
| walk_from_dir = finder.TestingDir('corpus');
|
| input_file_re = re.compile('^[a-zA-Z0-9_.]+[.]pdf$')
|
| test_cases = []
|
| - for source_dir, _, filename_list in os.walk(walk_from_dir):
|
| - for input_filename in filename_list:
|
| - if input_file_re.match(input_filename):
|
| - input_path = os.path.join(source_dir, input_filename)
|
| - if os.path.isfile(input_path):
|
| - test_cases.append((input_filename, source_dir))
|
|
|
| - if options.num_workers > 1:
|
| + if len(args):
|
| + for file_name in args:
|
| + input_path = os.path.join(walk_from_dir, file_name)
|
| + if not os.path.isfile(input_path):
|
| + print "Can't find test file '%s'" % file_name
|
| + return 1
|
| +
|
| + test_cases.append((os.path.basename(input_path),
|
| + os.path.dirname(input_path)))
|
| + else:
|
| + for source_dir, _, filename_list in os.walk(walk_from_dir):
|
| + for input_filename in filename_list:
|
| + if input_file_re.match(input_filename):
|
| + input_path = os.path.join(source_dir, input_filename)
|
| + if os.path.isfile(input_path):
|
| + test_cases.append((input_filename, source_dir))
|
| +
|
| + if options.num_workers > 1 and len(test_cases) > 1:
|
| try:
|
| pool = multiprocessing.Pool(options.num_workers)
|
| worker_func = functools.partial(test_one_file_parallel, working_dir,
|
|
|