X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FBackgroundJob%2FSelfTest.pm;h=b34b71d65ea61d1b011b27b4476140e02bee4320;hb=4d3be9c7cbf7d525181428a9b3697338aa066f0f;hp=514562590d5c93045220f168fd9eaa47583cba82;hpb=e23a8be01334e573ec40652efd9458414b9c6ebc;p=kivitendo-erp.git diff --git a/SL/BackgroundJob/SelfTest.pm b/SL/BackgroundJob/SelfTest.pm index 514562590..b34b71d65 100644 --- a/SL/BackgroundJob/SelfTest.pm +++ b/SL/BackgroundJob/SelfTest.pm @@ -13,6 +13,8 @@ use FindBin; use SL::DB::AuthUser; use SL::DB::Default; use SL::Common; +use SL::Locale::String qw(t8); +use Carp; use Rose::Object::MakeMethods::Generic ( array => [ @@ -66,6 +68,7 @@ sub run { $self->_send_email; } + croak t8("Unsuccessfully executed:" . join ("\n", $self->errors)) if $self->errors; return 1; } @@ -92,11 +95,10 @@ sub run_module { } or $self->add_errors($::locale->text('Could not load class #1 (#2): "#3"', $module, $file, $@)) && return; eval { - my $worker = $module->new; - $worker->tester($self->tester); - - $worker->run; - 1; + $self->tester->subtest($module => sub { + $module->new->run; + }); + 1 } or $self->add_errors($::locale->text('Could not load class #1, #2', $module, $@)) && return; $self->add_full_diag($output); @@ -156,6 +158,7 @@ sub _prepare_report { database => $::auth->client->{dbname}, client => $::auth->client->{name}, path => $FindBin::Bin, + errors => $self->errors, ); my $output;