diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2009-06-04 13:49:11 +0200 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2009-06-11 19:59:58 +0200 |
commit | 16a69f358a38c60577e25bc0811a220f8e71d2cd (patch) | |
tree | 8986f5b24d4a29701d88d5ef1932c9b025cf8954 /selftest/output | |
parent | 9bdf76c9c214d6f12c379f8feefe120fdae84377 (diff) | |
download | samba-16a69f358a38c60577e25bc0811a220f8e71d2cd.tar.gz samba-16a69f358a38c60577e25bc0811a220f8e71d2cd.tar.bz2 samba-16a69f358a38c60577e25bc0811a220f8e71d2cd.zip |
selftest: Use external processes for filtering known failures and pretty
formatting.
Diffstat (limited to 'selftest/output')
-rw-r--r-- | selftest/output/buildfarm.pm | 5 | ||||
-rw-r--r-- | selftest/output/plain.pm | 12 | ||||
-rw-r--r-- | selftest/output/subunit.pm | 2 |
3 files changed, 14 insertions, 5 deletions
diff --git a/selftest/output/buildfarm.pm b/selftest/output/buildfarm.pm index f4daf69010..701444359b 100644 --- a/selftest/output/buildfarm.pm +++ b/selftest/output/buildfarm.pm @@ -29,9 +29,10 @@ use BuildFarm; use strict; sub new($$$) { - my ($class) = @_; + my ($class, $statistics) = @_; my $self = { test_output => {}, + statistics => $statistics, last_time => 0, start_time => undef, }; @@ -111,6 +112,8 @@ sub summary($) my ($self) = @_; BuildFarm::summary($self->{last_time} - $self->{start_time}); + + print "TEST STATUS: $self->{statistics}->{SUITES_FAIL}\n"; } sub skip_testsuite($$$) diff --git a/selftest/output/plain.pm b/selftest/output/plain.pm index 20e5abc253..9d92a3e071 100644 --- a/selftest/output/plain.pm +++ b/selftest/output/plain.pm @@ -87,8 +87,10 @@ sub output_msg($$) require FileHandle; print $output; STDOUT->flush(); - } else { + } elsif (defined($self->{NAME})) { $self->{test_output}->{$self->{NAME}} .= $output; + } else { + print $output; } } @@ -96,7 +98,7 @@ sub control_msg($$) { my ($self, $output) = @_; - $self->output_msg($output); + #$self->output_msg($output); } sub end_testsuite($$$$$) @@ -157,6 +159,7 @@ sub end_test($$$$$) $self->{test_output}->{$self->{NAME}} = ""; if (not $self->{immediate}) { if ($result eq "failure") { print "f"; } + elsif ($result eq "xfail") { print "X"; } elsif ($result eq "skip") { print "s"; } elsif ($result eq "success") { print "."; } else { print "?($result)"; } @@ -231,10 +234,13 @@ sub summary($) } -sub skip_testsuite($$) +sub skip_testsuite($$$) { my ($self, $name, $reason) = @_; + unless (defined($reason)) { + $reason = "UNKNOWN"; + } push (@{$self->{skips}->{$reason}}, $name); if ($self->{totalsuites}) { diff --git a/selftest/output/subunit.pm b/selftest/output/subunit.pm index a7ca5d943d..5bce99f68f 100644 --- a/selftest/output/subunit.pm +++ b/selftest/output/subunit.pm @@ -95,7 +95,7 @@ sub skip_testsuite($$$$) my ($self, $name, $reason) = @_; Subunit::start_test($name); - Subunit::end_test($name, "skip"); + Subunit::end_test($name, "skip", $reason); } 1; |