Add a verbose flag to binding tests
[WebKit-https.git] / Tools / Scripts / run-bindings-tests
1 #!/usr/bin/python
2 # Copyright (C) 2010 Google Inc.  All rights reserved.
3 #
4 # Redistribution and use in source and binary forms, with or without
5 # modification, are permitted provided that the following conditions
6 # are met:
7 # 1. Redistributions of source code must retain the above copyright
8 #    notice, this list of conditions and the following disclaimer.
9 # 2. Redistributions in binary form must reproduce the above copyright
10 #    notice, this list of conditions and the following disclaimer in the
11 #    documentation and/or other materials provided with the distribution.
12 #
13 # THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
14 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16 # PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
17 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18 # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19 # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
20 # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
21 # OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 #
25
26 # This script generates h and cpp file for TestObj.idl using code
27 # generators. Please execute the script whenever changes are made to
28 # CodeGeneratorXXXX.pm, and submit the changes in XXXXTestObj.h/cpp in the same
29 # patch. This makes it easier to track and review changes in generated code.
30
31 import sys
32 from webkitpy.common.system import executive
33
34 def main(argv):
35     """Runs WebCore bindings code generators on test IDL files and compares
36     the results with reference files.
37
38     Options:
39        --reset-results: Overwrites the reference files with the generated results.
40
41     """
42     reset_results = "--reset-results" in argv
43     verbose = not "--no-verbose" in argv
44
45     generators = [
46         'JS',
47         'ObjC',
48         'GObject'
49     ]
50
51     from webkitpy.bindings.main import BindingsTests
52
53     return BindingsTests(reset_results, generators, executive.Executive(), verbose).main()
54
55
56 if __name__ == '__main__':
57     sys.exit(main(sys.argv))