Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(75)

Side by Side Diff: third_party/WebKit/Tools/Scripts/run-bindings-tests

Issue 2568863003: Split out argument parser construction in run-binding-tests. (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (C) 2010 Google Inc. All rights reserved. 2 # Copyright (C) 2010 Google Inc. All rights reserved.
3 # 3 #
4 # Redistribution and use in source and binary forms, with or without 4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions 5 # modification, are permitted provided that the following conditions
6 # are met: 6 # are met:
7 # 1. Redistributions of source code must retain the above copyright 7 # 1. Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer. 8 # notice, this list of conditions and the following disclaimer.
9 # 2. Redistributions in binary form must reproduce the above copyright 9 # 2. Redistributions in binary form must reproduce the above copyright
10 # notice, this list of conditions and the following disclaimer in the 10 # notice, this list of conditions and the following disclaimer in the
(...skipping 13 matching lines...) Expand all
24 # 24 #
25 25
26 import sys 26 import sys
27 27
28 from webkitpy.bindings.bindings_tests import run_bindings_tests 28 from webkitpy.bindings.bindings_tests import run_bindings_tests
29 from webkitpy.common import webkit_finder 29 from webkitpy.common import webkit_finder
30 webkit_finder.add_typ_dir_to_sys_path() 30 webkit_finder.add_typ_dir_to_sys_path()
31 31
32 import typ 32 import typ
33 33
34 def main(argv): 34 def create_argument_parser():
35 """Runs Blink bindings IDL compiler on test IDL files and compares the
36 results with reference files.
37
38 Please execute the script whenever changes are made to the compiler
39 (this is automatically done as a presubmit script),
40 and submit changes to the test results in the same patch.
41 This makes it easier to track and review changes in generated code.
42 """
43 argument_parser = typ.ArgumentParser() 35 argument_parser = typ.ArgumentParser()
44 argument_parser.add_argument('--reset-results', 36 argument_parser.add_argument('--reset-results',
45 default=False, 37 default=False,
46 action='store_true', 38 action='store_true',
47 help='Overwrites reference files with the generated results.') 39 help='Overwrites reference files with the generated results.')
48 argument_parser.add_argument('--skip-unit-tests', 40 argument_parser.add_argument('--skip-unit-tests',
49 default=False, 41 default=False,
50 action='store_true', 42 action='store_true',
51 help='Skip running unit tests (only run reference tests).') 43 help='Skip running unit tests (only run reference tests).')
52 argument_parser.add_argument('--skip-reference-tests', 44 argument_parser.add_argument('--skip-reference-tests',
53 default=False, 45 default=False,
54 action='store_true', 46 action='store_true',
55 help='Skip running reference tests (only run unit tests).') 47 help='Skip running reference tests (only run unit tests).')
48 return argument_parser
49
50
51 def main(argv):
52 """Runs Blink bindings IDL compiler on test IDL files and compares the
53 results with reference files.
54
55 Please execute the script whenever changes are made to the compiler
56 (this is automatically done as a presubmit script),
57 and submit changes to the test results in the same patch.
58 This makes it easier to track and review changes in generated code.
59 """
60
61 argument_parser = create_argument_parser()
56 62
57 # First, run bindings unit tests. 63 # First, run bindings unit tests.
58 runner = typ.Runner() 64 runner = typ.Runner()
59 runner.parse_args(argument_parser, argv[1:]) 65 runner.parse_args(argument_parser, argv[1:])
60 args = runner.args
61 if argument_parser.exit_status is not None: 66 if argument_parser.exit_status is not None:
62 return argument_parser.exit_status 67 return argument_parser.exit_status
63 runner.args.top_level_dir = webkit_finder.get_bindings_scripts_dir() 68
69 args = runner.args
70 args.top_level_dir = webkit_finder.get_bindings_scripts_dir()
64 if not args.skip_unit_tests: 71 if not args.skip_unit_tests:
65 return_code, _, _ = runner.run() 72 return_code, _, _ = runner.run()
66 if return_code != 0: 73 if return_code != 0:
67 return return_code 74 return return_code
68 75
76 # Now run the bindings end-to-end tests.
69 if args.skip_reference_tests: 77 if args.skip_reference_tests:
70 return 0 78 return 0
71 79
72 # Now run the bindings end-to-end tests.
73 return run_bindings_tests(args.reset_results, args.verbose) 80 return run_bindings_tests(args.reset_results, args.verbose)
74 81
75 82
76 if __name__ == '__main__': 83 if __name__ == '__main__':
77 sys.exit(main(sys.argv)) 84 sys.exit(main(sys.argv))
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698