1 | #!/usr/bin/env python
|
---|
2 | # vim: expandtab
|
---|
3 | # Pretty-format subunit output
|
---|
4 | # Copyright (C) 2008-2010 Jelmer Vernooij <jelmer@samba.org>
|
---|
5 | # Published under the GNU GPL, v3 or later
|
---|
6 |
|
---|
7 | import optparse
|
---|
8 | import os
|
---|
9 | import signal
|
---|
10 | import sys
|
---|
11 |
|
---|
12 | sys.path.insert(0, "bin/python")
|
---|
13 |
|
---|
14 | import subunithelper
|
---|
15 |
|
---|
16 | parser = optparse.OptionParser("format-subunit [options]")
|
---|
17 | parser.add_option("--verbose", action="store_true",
|
---|
18 | help="Be verbose")
|
---|
19 | parser.add_option("--immediate", action="store_true",
|
---|
20 | help="Show failures immediately, don't wait until test run has finished")
|
---|
21 | parser.add_option("--prefix", type="string", default=".",
|
---|
22 | help="Prefix to write summary to")
|
---|
23 |
|
---|
24 | opts, args = parser.parse_args()
|
---|
25 |
|
---|
26 | def handle_sigint(sig, stack):
|
---|
27 | sys.exit(0)
|
---|
28 |
|
---|
29 | signal.signal(signal.SIGINT, handle_sigint)
|
---|
30 |
|
---|
31 | statistics = {
|
---|
32 | 'SUITES_FAIL': 0,
|
---|
33 | 'TESTS_UNEXPECTED_OK': 0,
|
---|
34 | 'TESTS_EXPECTED_OK': 0,
|
---|
35 | 'TESTS_UNEXPECTED_FAIL': 0,
|
---|
36 | 'TESTS_EXPECTED_FAIL': 0,
|
---|
37 | 'TESTS_ERROR': 0,
|
---|
38 | 'TESTS_SKIP': 0,
|
---|
39 | }
|
---|
40 |
|
---|
41 | msg_ops = subunithelper.PlainFormatter(opts.verbose, opts.immediate, statistics)
|
---|
42 |
|
---|
43 | expected_ret = subunithelper.parse_results(msg_ops, statistics, sys.stdin)
|
---|
44 |
|
---|
45 | summaryfile = os.path.join(opts.prefix, "summary")
|
---|
46 |
|
---|
47 | msg_ops.write_summary(summaryfile)
|
---|
48 |
|
---|
49 | print "\nA summary with detailed information can be found in:"
|
---|
50 | print " %s" % summaryfile
|
---|
51 |
|
---|
52 | sys.exit(expected_ret)
|
---|