Die Ergebnisse für das E-Mail-Template liegen in einem Hash mit den
Modul-Namen als keys. Im Template wird über die keys iteriert, damit ist
die Reihenfolge aber nicht garantiert. Deshalb wird hier eine Modulnummer
vor dem Namen eingefügt und die Ergbenisse sortiert - so kommen die Ergebisse
in der Reihenfolge der Module in der Konfig-Datei.
'add_full_diag' => { interface => 'add', hash_key => 'full_diag' },
],
scalar => [
'add_full_diag' => { interface => 'add', hash_key => 'full_diag' },
],
scalar => [
- qw(diag tester config aggreg),
+ qw(diag tester config aggreg module_nr),
$module =~ s/[^\w:]//g;
$module = "SL::BackgroundJob::SelfTest::$module";
$module =~ s/[^\w:]//g;
$module = "SL::BackgroundJob::SelfTest::$module";
+ # increase module nr
+ $self->module_nr(($self->module_nr || 0) + 1);
+
# try to load module;
(my $file = $module) =~ s|::|/|g;
eval {
# try to load module;
(my $file = $module) =~ s|::|/|g;
eval {
} or $self->add_errors($::locale->text('Could not load class #1, #2', $module, $@)) && return;
$self->add_full_diag($output);
} or $self->add_errors($::locale->text('Could not load class #1, #2', $module, $@)) && return;
$self->add_full_diag($output);
- $self->{diag_per_module}{$module} = $output;
+ $self->{diag_per_module}{$self->module_nr . ': ' . $module} = $output;
my $parser = TAP::Parser->new({ tap => $output});
$parser->run;
my $parser = TAP::Parser->new({ tap => $output});
$parser->run;
Full report:
------------
Full report:
------------
-[% FOREACH module = SELF.diag_per_module.keys %]
+[% FOREACH module = SELF.diag_per_module.keys.sort %]
Module: [% module %]
--------------------
Module: [% module %]
--------------------