@@ -, +, @@ --------- --- t/db_dependent/00-strict.t | 66 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 51 insertions(+), 15 deletions(-) mode change 100644 => 100755 t/db_dependent/00-strict.t --- a/t/db_dependent/00-strict.t +++ a/t/db_dependent/00-strict.t @@ -1,24 +1,60 @@ +#!/usr/bin/perl # This script is called by the pre-commit git hook to test modules compile use strict; use warnings; + +use threads; # used for parallel use Test::More; use Test::Strict; -use File::Spec; -use File::Find; -use lib("misc/translator"); -use lib("installer"); - -my @dirs = ( 'acqui', 'admin', 'authorities', 'basket', - 'catalogue', 'cataloguing', 'changelanguage.pl', 'circ', 'debian', 'docs', - 'edithelp.pl', 'errors', 'fix-perl-path.PL', 'help.pl', 'installer', - 'koha_perl_deps.pl', 'kohaversion.pl', 'labels', - 'mainpage.pl', 'Makefile.PL', 'members', 'misc', 'offline_circ', 'opac', - 'patroncards', 'reports', 'reserve', 'resetversion.pl', 'reviews', - 'rewrite-config.PL', 'rotating_collections', 'serials', 'services', 'skel', - 'sms', 'suggestion', 'svc', 'tags', 'tools', 'virtualshelves' ); + +use lib('misc/translator'); +use lib('installer'); + +my @dirs = ( + 'acqui', 'admin', + 'authorities', 'basket', + 'catalogue', 'cataloguing', + 'changelanguage.pl', 'circ', + 'debian', 'docs', + 'edithelp.pl', 'errors', + 'fix-perl-path.PL', 'help.pl', + 'installer', 'koha_perl_deps.pl', + 'kohaversion.pl', 'labels', + 'mainpage.pl', 'Makefile.PL', + 'members', 'misc', + 'offline_circ', 'opac', + 'patroncards', 'reports', + 'reserve', 'resetversion.pl', + 'reviews', 'rewrite-config.PL', + 'rotating_collections', 'serials', + 'services', 'skel', + 'sms', 'suggestion', + 'svc', 'tags', + 'tools', 'virtualshelves', +); $Test::Strict::TEST_STRICT = 0; -$Test::Strict::TEST_SKIP = [ 'misc/kohalib.pl', 'sms/sms_listen_windows_start.pl', 'misc/plack/koha.psgi' ]; +$Test::Strict::TEST_SKIP = [ + 'misc/kohalib.pl', 'sms/sms_listen_windows_start.pl', + 'misc/plack/koha.psgi' +]; + +my @dir_tests; +foreach my $d (@dirs) { + my $dir_test = threads->create(\&test_dir,$d); + push @dir_tests, $dir_test; +} + +while (@dir_tests) { + my $dir_test = shift @dir_tests; + $dir_test->join(); +} + +done_testing(); -all_perl_files_ok(@dirs); +sub test_dir { + my ($d) = @_; + all_perl_files_ok($d); + return; +} --