X-Git-Url: https://git.exim.org/users/heiko/exim.git/blobdiff_plain/87193ab87011f7c61fd9164e2a09913a55944340..bf3e317e5a01916a351278597c6c0664ed198ddc:/test/runtest diff --git a/test/runtest b/test/runtest index 0b236bca1..858617957 100755 --- a/test/runtest +++ b/test/runtest @@ -33,7 +33,7 @@ use File::Copy; use lib "$RealBin/lib"; use Exim::Runtest; -use Exim::Utils qw(uniq numerically); +use Exim::Utils qw(uniq numerically cp); use if $ENV{DEBUG} && scalar($ENV{DEBUG} =~ /\bruntest\b/) => 'Smart::Comments' => '####'; use if $ENV{DEBUG} && scalar($ENV{DEBUG} =~ /\bruntest\b/) => 'Data::Dumper'; @@ -2942,6 +2942,7 @@ GetOptions( 'valgrind' => \$valgrind, 'range=s{2}' => \my @range_wanted, 'test=i@' => \my @tests_wanted, + 'fail-any!' => \my $fail_any, 'flavor|flavour=s' => \$flavour, 'help' => sub { pod2usage(-exit => 0) }, 'man' => sub { @@ -3745,17 +3746,15 @@ system("sudo cp eximdir/exim eximdir/exim_exim;" . ($parm_exim_dir) = $parm_exim =~ m?^(.*)/exim?; $dbm_build_deleted = 0; -if (defined $parm_lookups{dbm} && not copy("$parm_exim_dir/exim_dbmbuild", "eximdir")) +if (defined $parm_lookups{dbm} && not cp("$parm_exim_dir/exim_dbmbuild", "eximdir/exim_dbmbuild")) { delete $parm_lookups{dbm}; $dbm_build_deleted = 1; } foreach my $tool (qw(exim_dumpdb exim_lock exinext exigrep eximstats)) { - copy("$parm_exim_dir/$tool" => "eximdir/") + cp("$parm_exim_dir/$tool" => "eximdir/$tool") or tests_exit(-1, "Failed to make a copy of $tool: $!"); - chmod((stat "$parm_exim_dir/$tool")[2]&07777, "eximdir/$tool") - or tests_exit(-1, "Failed to chmod $tool: $!\n"); } # Collect some version information @@ -4518,7 +4517,7 @@ foreach $test (@test_list) ################################################## tests_exit(-1, "No runnable tests selected") if not @test_list; -tests_exit($failures); +tests_exit($fail_any ? $failures : 0); __END__