blob: 671188c25d4625836dfbd9509984984ab3ee7e0c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
#!/usr/bin/env python
#
# Reads tests from the .test files on the command line (or the built-in set)
# and runs them, or writes a CTest script to run them.
#
# * @author Ben Gardner October 2009
# * @author Guy Maurel October 2015
# * @author Matthew Woehlke June 2018
#
import argparse
import os
import sys
import test_uncrustify as tu
# -----------------------------------------------------------------------------
def main(argv):
parser = argparse.ArgumentParser(description='Run uncrustify format tests')
tu.add_format_tests_arguments(parser)
args = tu.parse_args(parser)
# Read tests
tests = []
print('Tests: {!s}'.format(args.tests))
for group in args.tests:
tests_file = os.path.join(tu.test_dir, '{}.test'.format(group))
tests += tu.read_format_tests(tests_file, group)
if args.write_ctest:
tu.config.python_exe = args.python
tu.config.uncrustify_exe = tu.fixup_ctest_path(
tu.config.uncrustify_exe, args.cmake_config)
with open(args.write_ctest, 'wt') as f:
for test in tests:
test.print_as_ctest(f)
else:
if args.select:
s = tu.Selector(args.select)
else:
s = None
counts = tu.run_tests(tests, args, s)
tu.report(counts)
if counts['failing'] > 0:
sys.exit(2)
if counts['mismatch'] > 0 or counts['unstable'] > 0:
sys.exit(1)
# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
if __name__ == '__main__':
sys.exit(main(sys.argv))
|