print TEST "</table>\n";
- print TEST "<div class=\"duration\">Duration: " . (time() - $self->{START_TIME}) . "s</div>\n";
+ print TEST "<div class=\"duration\">Duration: " . ($self->{last_time} - $self->{START_TIME}) . "s</div>\n";
$self->print_html_footer(*TEST);
print INDEX "</tr>\n";
}
+sub report_time($$)
+{
+ my ($self, $time) = @_;
+ $self->{last_time} = $time;
+}
+
sub start_test($$)
{
my ($self, $parents, $testname) = @_;
if ($#$parents == -1) {
- $self->{START_TIME} = time();
+ $self->{START_TIME} = $self->{last_time};
$self->start_testsuite($testname);
return;
}
verbose => $verbose,
immediate => $immediate,
statistics => $statistics,
- start_time => time(),
+ start_time => undef,
test_output => {},
suitesfailed => [],
suites_ok => 0,
bless($self, $class);
}
+sub report_time($$)
+{
+ my ($self, $time) = @_;
+ unless ($self->{start_time}) {
+ $self->{start_time} = $time;
+ }
+ $self->{last_time} = $time;
+}
+
sub output_msg($$);
sub start_testsuite($$)
$self->{index}++;
$self->{NAME} = $name;
- $self->{START_TIME} = time();
+ $self->{START_TIME} = $self->{last_time};
my $duration = $self->{START_TIME} - $self->{start_time};
bless($self, $class);
}
+sub report_time($$)
+{
+ my ($self, $time) = @_;
+ my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($time);
+ printf "time: %04d-%02d-%02d %02d:%02d:%02dZ\n", $year+1900, $mon, $mday, $hour, $min, $sec;
+}
+
sub start_testsuite($$)
{
my ($self, $name) = @_;
#!/usr/bin/perl
# Bootstrap Samba and run a number of tests against it.
-# Copyright (C) 2005-2008 Jelmer Vernooij <jelmer@samba.org>
+# Copyright (C) 2005-2009 Jelmer Vernooij <jelmer@samba.org>
# Copyright (C) 2007-2009 Stefan Metzmacher <metze@samba.org>
# This program is free software; you can redistribute it and/or modify
my ($envname, $name, $cmd, $i, $totalsuites, $msg_ops) = @_;
my $pcap_file = setup_pcap($name);
+ $msg_ops->report_time(time());
$msg_ops->start_test([], $name);
unless (open(RESULT, "$cmd 2>&1|")) {
my $exitcode = $? >> 8;
+ $msg_ops->report_time(time());
if ($ret == 1) {
$msg_ops->end_test([], $name, "success", $expected_ret != $ret, undef);
} else {
} else {
die("Invalid output format '$opt_format'");
}
-
+$msg_ops->report_time(time());
foreach (@available) {
my $name = $$_[0];
my $envvars = setup_env($envname);
if (not defined($envvars)) {
- $msg_ops->skip_testsuite($name, "unable to set up environment $envname");
+ $msg_ops->skip_testsuite($name,
+ "unable to set up environment $envname");
next;
}