diff options
Diffstat (limited to '3rdparty/jsoncpp/test/rununittests.py')
-rw-r--r-- | 3rdparty/jsoncpp/test/rununittests.py | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/3rdparty/jsoncpp/test/rununittests.py b/3rdparty/jsoncpp/test/rununittests.py deleted file mode 100644 index 08850ec1a1d..00000000000 --- a/3rdparty/jsoncpp/test/rununittests.py +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 2009 Baptiste Lepilleur -# Distributed under MIT license, or public domain if desired and -# recognized in your jurisdiction. -# See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE - -from __future__ import print_function -from __future__ import unicode_literals -from io import open -from glob import glob -import sys -import os -import os.path -import subprocess -import optparse - -VALGRIND_CMD = 'valgrind --tool=memcheck --leak-check=yes --undef-value-errors=yes' - -class TestProxy(object): - def __init__(self, test_exe_path, use_valgrind=False): - self.test_exe_path = os.path.normpath(os.path.abspath(test_exe_path)) - self.use_valgrind = use_valgrind - - def run(self, options): - if self.use_valgrind: - cmd = VALGRIND_CMD.split() - else: - cmd = [] - cmd.extend([self.test_exe_path, '--test-auto'] + options) - try: - process = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) - except: - print(cmd) - raise - stdout = process.communicate()[0] - if process.returncode: - return False, stdout - return True, stdout - -def runAllTests(exe_path, use_valgrind=False): - test_proxy = TestProxy(exe_path, use_valgrind=use_valgrind) - status, test_names = test_proxy.run(['--list-tests']) - if not status: - print("Failed to obtain unit tests list:\n" + test_names, file=sys.stderr) - return 1 - test_names = [name.strip() for name in test_names.decode('utf-8').strip().split('\n')] - failures = [] - for name in test_names: - print('TESTING %s:' % name, end=' ') - succeed, result = test_proxy.run(['--test', name]) - if succeed: - print('OK') - else: - failures.append((name, result)) - print('FAILED') - failed_count = len(failures) - pass_count = len(test_names) - failed_count - if failed_count: - print() - for name, result in failures: - print(result) - print('%d/%d tests passed (%d failure(s))' % ( pass_count, len(test_names), failed_count)) - return 1 - else: - print('All %d tests passed' % len(test_names)) - return 0 - -def main(): - from optparse import OptionParser - parser = OptionParser(usage="%prog [options] <path to test_lib_json.exe>") - parser.add_option("--valgrind", - action="store_true", dest="valgrind", default=False, - help="run all the tests using valgrind to detect memory leaks") - parser.enable_interspersed_args() - options, args = parser.parse_args() - - if len(args) != 1: - parser.error('Must provides at least path to test_lib_json executable.') - sys.exit(1) - - exit_code = runAllTests(args[0], use_valgrind=options.valgrind) - sys.exit(exit_code) - -if __name__ == '__main__': - main() |