55 lines
1008 B
Perl
Executable File
55 lines
1008 B
Perl
Executable File
#!/usr/bin/perl -w
|
|
#
|
|
# Test that all the hook files we install are executable.
|
|
#
|
|
# Steve
|
|
# --
|
|
#
|
|
|
|
use strict;
|
|
use Test::More;
|
|
|
|
|
|
#
|
|
# Rather than having a hardwired list of distributions to test
|
|
# against we look for subdirectories beneath hooks/ and test each
|
|
# one.
|
|
#
|
|
foreach my $dir ( glob( "hooks/*" ) )
|
|
{
|
|
next if ( $dir =~ /CVS/i );
|
|
next if ( $dir =~ /common/i );
|
|
next if ( ! -d $dir );
|
|
|
|
if ( $dir =~ /hooks\/(.*)/ )
|
|
{
|
|
my $dist = $1;
|
|
testDistroHooks( $dist );
|
|
}
|
|
}
|
|
|
|
done_testing();
|
|
|
|
sub testDistroHooks
|
|
{
|
|
my ( $dist ) = ( @_ );
|
|
|
|
#
|
|
# Make sure we have a distro-specific hook directory.
|
|
#
|
|
ok( -d "hooks/$dist", "There is a hook directory for distro $dist" );
|
|
|
|
#
|
|
# Now make sure we just have files, and that they are executable.
|
|
#
|
|
foreach my $file ( glob( "hooks/$dist/*" ) )
|
|
{
|
|
if ( ! -d $file )
|
|
{
|
|
ok( -e $file, "$file" );
|
|
ok( -x $file, " File is executable: $file" );
|
|
}
|
|
}
|
|
}
|
|
|