- add sources.
[platform/framework/web/crosswalk.git] / src / ppapi / generators / idl_tests.py
1 #!/usr/bin/env python
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5
6 """ Test runner for IDL Generator changes """
7
8 import subprocess
9 import sys
10
11 def TestIDL(testname, args):
12   print '\nRunning unit tests for %s.' % testname
13   try:
14     args = [sys.executable, testname] + args
15     subprocess.check_call(args)
16     return 0
17   except subprocess.CalledProcessError as err:
18     print 'Failed with %s.' % str(err)
19     return 1
20
21 def main(args):
22   errors = 0
23   errors += TestIDL('idl_lexer.py', ['--test'])
24   assert errors == 0
25   errors += TestIDL('idl_parser.py', ['--test'])
26   assert errors == 0
27   errors += TestIDL('idl_c_header.py', [])
28   assert errors == 0
29   errors += TestIDL('idl_c_proto.py', ['--wnone', '--test'])
30   assert errors == 0
31   errors += TestIDL('idl_gen_pnacl.py', ['--wnone', '--test'])
32   assert errors == 0
33
34   if errors:
35     print '\nFailed tests.'
36   return errors
37
38
39 if __name__ == '__main__':
40   sys.exit(main(sys.argv[1:]))
41