source: branches/samba-3.5.x/selftest/format-subunit.pl

Last change on this file was 414, checked in by Herwig Bauernfeind, 15 years ago

Samba 3.5.0: Initial import

File size: 1.7 KB
Line 
1#!/usr/bin/perl
2# Pretty-format subunit output
3# Copyright (C) Jelmer Vernooij <jelmer@samba.org>
4# Published under the GNU GPL, v3 or later
5
6=pod
7
8=head1 NAME
9
10format-subunit [--format=<NAME>] [--immediate] < instream > outstream
11
12=head1 SYNOPSIS
13
14Format the output of a subunit stream.
15
16=head1 OPTIONS
17
18=over 4
19
20=item I<--immediate>
21
22Show errors as soon as they happen rather than at the end of the test run.
23
24=item I<--format>=FORMAT
25
26Choose the format to print. Currently supported are plain or html.
27
28=head1 LICENSE
29
30GNU General Public License, version 3 or later.
31
32=head1 AUTHOR
33
34Jelmer Vernooij <jelmer@samba.org>
35
36=cut
37
38use Getopt::Long;
39use strict;
40use FindBin qw($RealBin $Script);
41use lib "$RealBin";
42use Subunit qw(parse_results);
43
44my $opt_format = "plain";
45my $opt_help = undef;
46my $opt_verbose = 0;
47my $opt_immediate = 0;
48my $opt_prefix = ".";
49
50my $result = GetOptions (
51 'help|h|?' => \$opt_help,
52 'format=s' => \$opt_format,
53 'verbose' => \$opt_verbose,
54 'immediate' => \$opt_immediate,
55 'prefix:s' => \$opt_prefix,
56 );
57
58exit(1) if (not $result);
59
60my $msg_ops;
61
62my $statistics = {
63 SUITES_FAIL => 0,
64
65 TESTS_UNEXPECTED_OK => 0,
66 TESTS_EXPECTED_OK => 0,
67 TESTS_UNEXPECTED_FAIL => 0,
68 TESTS_EXPECTED_FAIL => 0,
69 TESTS_ERROR => 0,
70 TESTS_SKIP => 0,
71};
72
73if ($opt_format eq "plain") {
74 require output::plain;
75 $msg_ops = new output::plain("$opt_prefix/summary", $opt_verbose, $opt_immediate, $statistics, undef);
76} elsif ($opt_format eq "html") {
77 require output::html;
78 mkdir("test-results", 0777);
79 $msg_ops = new output::html("test-results", $statistics);
80} else {
81 die("Invalid output format '$opt_format'");
82}
83
84my $expected_ret = parse_results($msg_ops, $statistics, *STDIN);
85
86$msg_ops->summary();
87
88exit($expected_ret);
Note: See TracBrowser for help on using the repository browser.