forked from mirrors/gecko-dev
45 lines
1.2 KiB
Python
Executable file
45 lines
1.2 KiB
Python
Executable file
#!/usr/bin/env python
|
|
# Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
""" Test runner for IDL Generator changes """
|
|
|
|
import subprocess
|
|
import sys
|
|
|
|
def TestIDL(testname, args):
|
|
print '\nRunning unit tests for %s.' % testname
|
|
try:
|
|
args = [sys.executable, testname] + args
|
|
subprocess.check_call(args)
|
|
return 0
|
|
except subprocess.CalledProcessError as err:
|
|
print 'Failed with %s.' % str(err)
|
|
return 1
|
|
|
|
def main(args):
|
|
errors = 0
|
|
errors += TestIDL('idl_lexer.py', ['--test'])
|
|
assert errors == 0
|
|
errors += TestIDL('idl_parser.py', ['--test'])
|
|
assert errors == 0
|
|
errors += TestIDL('idl_c_header.py', [])
|
|
assert errors == 0
|
|
errors += TestIDL('idl_c_proto.py', ['--wnone', '--test'])
|
|
assert errors == 0
|
|
errors += TestIDL('idl_gen_pnacl.py', ['--wnone', '--test'])
|
|
assert errors == 0
|
|
errors += TestIDL('idl_namespace.py', [])
|
|
assert errors == 0
|
|
errors += TestIDL('idl_node.py', [])
|
|
assert errors == 0
|
|
|
|
if errors:
|
|
print '\nFailed tests.'
|
|
return errors
|
|
|
|
|
|
if __name__ == '__main__':
|
|
sys.exit(main(sys.argv[1:]))
|
|
|