From 1dd0e4c96376f2c28590dad683161ee8c57c0508 Mon Sep 17 00:00:00 2001 From: Thomas Guyot-Sionnest Date: Fri, 31 Jan 2014 08:54:44 -0500 Subject: Enable tests in tests/ subdirs diff --git a/NPTest.pm b/NPTest.pm index 3d6e3a2..2baed0b 100644 --- a/NPTest.pm +++ b/NPTest.pm @@ -494,26 +494,35 @@ sub SetCacheFilename sub DetermineTestHarnessDirectory { - my( $userSupplied ) = @_; + my( @userSupplied ) = @_; + my @dirs; # User Supplied - if ( defined( $userSupplied ) && $userSupplied ) + if ( @userSupplied > 0 ) { - if ( -d $userSupplied ) + for my $u ( @userSupplied ) { - return $userSupplied; - } - else - { - return undef; # userSupplied is invalid -> FAIL + if ( -d $u ) + { + push ( @dirs, $u ); + } } } - # Simple Case : "t" is a subdirectory of the current directory + # Simple Cases: "t" and tests are subdirectories of the current directory if ( -d "./t" ) { - return "./t"; + push ( @dirs, "./t"); } + if ( -d "./tests" ) + { + push ( @dirs, "./tests"); + } + + if ( @dirs > 0 ) + { + return @dirs; + } # To be honest I don't understand which case satisfies the # original code in test.pl : when $tstdir == `pwd` w.r.t. @@ -526,7 +535,7 @@ sub DetermineTestHarnessDirectory if ( $pwd =~ m|/t$| ) { - return $pwd; + push ( @dirs, $pwd ); # The alternate that might work better is # chdir( ".." ); @@ -535,7 +544,7 @@ sub DetermineTestHarnessDirectory # to be tested is in the current directory (ie "./check_disk ....") } - return undef; + return @dirs; } sub TestsFrom diff --git a/plugins/tests/check_procs.t b/plugins/tests/check_procs.t old mode 100644 new mode 100755 diff --git a/test.pl.in b/test.pl.in index 85ac19d..01a97ec 100755 --- a/test.pl.in +++ b/test.pl.in @@ -9,9 +9,9 @@ use Getopt::Long; use NPTest qw(DetermineTestHarnessDirectory TestsFrom); -my $tstdir; +my @tstdir; -if ( ! GetOptions( "testdir:s" => \$tstdir ) ) +if ( ! GetOptions( "testdir:s" => \@tstdir ) ) { print "Usage: ${0} [--testdir=] [ ...]\n"; exit 1; @@ -25,15 +25,18 @@ if ( scalar( @ARGV ) ) } else { - my $directory = DetermineTestHarnessDirectory( $tstdir ); + my @directory = DetermineTestHarnessDirectory( @tstdir ); - if ( !defined( $directory ) ) + if ( @directory == 0 ) { print STDERR "$0: Unable to determine the test harness directory - ABORTING\n"; exit 2; } - @tests = TestsFrom( $directory, 1 ); + for my $d ( @directory ) + { + push (@tests, TestsFrom( $d, 1 )); + } } if ( ! scalar( @tests ) ) -- cgit v0.10-9-g596f