summaryrefslogtreecommitdiff
path: root/source4/selftest/output/html.pm
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2007-08-26 16:56:41 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 15:02:35 -0500
commit3f6cf9672ba1d25f10cbd0bb8ce1525c592a8e78 (patch)
tree7ba5e28b6b773414a831e175d8eab017b897baca /source4/selftest/output/html.pm
parentec180e2475bbdac03a3030f700d243799a4532a4 (diff)
downloadsamba-3f6cf9672ba1d25f10cbd0bb8ce1525c592a8e78.tar.gz
samba-3f6cf9672ba1d25f10cbd0bb8ce1525c592a8e78.tar.bz2
samba-3f6cf9672ba1d25f10cbd0bb8ce1525c592a8e78.zip
r24669: Add CSS to the test run HTML output. See http://samba.org/~jelmer/ for an
example of the current output. (This used to be commit 1e57394e865a9122bddb3413088a19d4f57a3e3d)
Diffstat (limited to 'source4/selftest/output/html.pm')
-rw-r--r--source4/selftest/output/html.pm70
1 files changed, 49 insertions, 21 deletions
diff --git a/source4/selftest/output/html.pm b/source4/selftest/output/html.pm
index d181516002..5a7ee15af2 100644
--- a/source4/selftest/output/html.pm
+++ b/source4/selftest/output/html.pm
@@ -16,14 +16,27 @@ sub new($$$$) {
msg => ""
};
+ link("selftest/output/testresults.css", "$dirname/testresults.css");
+
open(INDEX, ">$dirname/index.html");
- print INDEX "<html>\n";
+ print INDEX "<html lang=\"en\">\n";
+ print INDEX "<head>\n";
+ print INDEX " <title>Samba Testsuite Run</title>\n";
+ print INDEX " <link rel=\"stylesheet\" type=\"text/css\" href=\"testresults.css\"/>\n";
+ print INDEX "</head>\n";
print INDEX "<body>\n";
- print INDEX "<table>\n";
- print INDEX "<tr><td>Test</td><td>Environment</td><td>Result</td><td>Duration</td></tr>\n";
-
- $self->{INDEX} = *INDEX;
+ print INDEX "<table width=\"100%\" border=\"0\" cellspacing=\"0\">\n";
+ print INDEX " <tr><td class=\"title\">Samba Testsuite Run</td></tr>\n";
+ print INDEX " <tr><td>\n";
+ print INDEX " <center>";
+ print INDEX " <table>\n";
+ print INDEX " <tr>\n";
+ print INDEX " <td class=\"tableHead\">Test</td>\n";
+ print INDEX " <td class=\"tableHead\">Environment</td>\n";
+ print INDEX " <td class=\"tableHead\">Result</td>\n";
+ print INDEX " <td class=\"tableHead\">Duration</td>\n";
+ print INDEX " </tr>\n";
bless($self, $class);
}
@@ -35,13 +48,22 @@ sub start_testsuite($$)
my ($self, $state) = @_;
$state->{HTMLFILE} = "$state->{NAME}.html";
+ $state->{HTMLFILE} =~ s/[:\t\n \/]/_/g;
- $state->{HTMLFILE} =~ s/[:\t\n ]/_/g;
+ open(TEST, ">$self->{dirname}/$state->{HTMLFILE}") or die("Unable to open $state->{HTMLFILE} for writing");
- open(TEST, ">$self->{dirname}/$state->{HTMLFILE}");
+ my $title = "Test Results for $state->{NAME}";
- print TEST "<html>\n";
+ print TEST "<html lang=\"en\">\n";
+ print TEST "<head>\n";
+ print TEST " <title>$title</title>\n";
+ print TEST " <link rel=\"stylesheet\" type=\"text/css\" href=\"testresults.css\"/>\n";
+ print TEST "</head>\n";
print TEST "<body>\n";
+ print TEST "<table width=\"100%\" border=\"0\" cellspacing=\"0\">\n";
+ print TEST " <tr><td class=\"title\">$title</td></tr>\n";
+ print TEST " <tr><td>\n";
+ print TEST " <table>\n";
}
sub output_msg($$$)
@@ -59,20 +81,21 @@ sub end_testsuite($$$$$)
{
my ($self, $state, $expected_ret, $ret, $envlog) = @_;
+ print TEST "</table>\n";
print TEST "</body>\n";
print TEST "</html>\n";
close(TEST);
- print INDEX "<tr><td><a href=\"$state->{HTMLFILE}\">$state->{NAME}</a></td><td>$state->{ENVNAME}</td>";
+ print INDEX "<tr><td class=\"testSuite\"><a href=\"$state->{HTMLFILE}\">$state->{NAME}</a></td><td class=\"environment\">$state->{ENVNAME}</td>";
if ($ret == $expected_ret) {
- print INDEX "<td bgcolor=\"green\">OK</td>";
+ print INDEX "<td class=\"resultOk\">OK</td>";
} else {
- print INDEX "<td bgcolor=\"red\">FAIL</td>";
+ print INDEX "<td class=\"resultFailure\">FAIL</td>";
}
- print INDEX "<td>" . (time() - $state->{START_TIME}) . "</td>\n";
+ print INDEX "<td class=\"duration\">" . (time() - $state->{START_TIME}) . "</td>\n";
print INDEX "</tr>\n";
}
@@ -81,8 +104,6 @@ sub start_test($$$)
{
my ($self, $state, $testname) = @_;
- print TEST "<h3>$testname</h3>\n";
-
$self->{active_test} = $testname;
$self->{msg} = "";
}
@@ -91,15 +112,21 @@ sub end_test($$$$$)
{
my ($self, $state, $testname, $result, $unexpected) = @_;
+ print TEST "<tr>";
+
if ($result eq "skip") {
- print TEST "<div bgcolor=\"yellow\">\n";
+ print TEST "<td class=\"outputSkipped\">\n";
} elsif ($unexpected) {
- print TEST "<div bgcolor=\"red\">\n";
+ print TEST "<td class=\"outputFailure\">\n";
+ } else {
+ print TEST "<td class=\"outputOk\">\n";
}
+ print TEST "<h3>$testname</h3>\n";
+
print TEST $self->{msg};
- print TEST "</div>\n";
+ print TEST "</td></tr>\n";
$self->{active_test} = undef;
}
@@ -107,12 +134,13 @@ sub end_test($$$$$)
sub summary($)
{
my ($self) = @_;
- print INDEX "</table>\n";
- print INDEX "FAILED ($self->{statistics}->{TESTS_UNEXPECTED_FAIL} failures and $self->{statistics}->{TESTS_ERROR} errors in $self->{statistics}->{SUITES_FAIL} testsuites)\n";
+ print INDEX "</table>\n";
+ print INDEX "</center>\n";
+ print INDEX "</td></tr>\n";
+ print INDEX "</table>\n";
print INDEX "</body>\n";
print INDEX "</html>\n";
-
close(INDEX);
}
@@ -127,7 +155,7 @@ sub skip_testsuite($$)
{
my ($self, $name) = @_;
- print INDEX "<tr><td>$name</td><td>N/A</td><td bgcolor=\"yellow\">SKIPPED</td><td>N/A</td></tr>\n";
+ print INDEX "<tr><td class=\"testSuite\">$name</td><td class=\"environmentSkipped\">N/A</td><td class=\"resultSkipped\">SKIPPED</td><td class=\"durationSkipped\">N/A</td></tr>\n";
}
1;