summaryrefslogtreecommitdiff
path: root/selftest/output
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2009-06-04 13:49:11 +0200
committerJelmer Vernooij <jelmer@samba.org>2009-06-11 19:59:58 +0200
commit16a69f358a38c60577e25bc0811a220f8e71d2cd (patch)
tree8986f5b24d4a29701d88d5ef1932c9b025cf8954 /selftest/output
parent9bdf76c9c214d6f12c379f8feefe120fdae84377 (diff)
downloadsamba-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.pm5
-rw-r--r--selftest/output/plain.pm12
-rw-r--r--selftest/output/subunit.pm2
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;