Mehr als eine SelfTest-Modul prüfen
[kivitendo-erp.git] / SL / BackgroundJob / SelfTest.pm
index 6137ced..b34b71d 100644 (file)
@@ -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);
@@ -153,8 +155,10 @@ sub _prepare_report {
   my %params = (
     SELF     => $self,
     host     => hostname,
-    database => $::myconfig{dbname},
+    database => $::auth->client->{dbname},
+    client   => $::auth->client->{name},
     path     => $FindBin::Bin,
+    errors   => $self->errors,
   );
 
   my $output;