6 use File::Spec::Functions qw/catdir catfile curdir abs2rel rel2abs/;
8 use Test::Harness qw/runtests $switches/;
11 my $recipesdir = catdir($top, "test", "recipes");
12 my $testlib = catdir($top, "test", "testlib");
13 my $utillib = catdir($top, "util");
15 # It seems that $switches is getting interpretted with 'eval' or something
16 # like that, and that we need to take care of backslashes or they will
17 # disappear along the way.
18 $testlib =~ s|\\|\\\\|g if $^O eq "MSWin32";
19 $utillib =~ s|\\|\\\\|g if $^O eq "MSWin32";
21 # Test::Harness provides the variable $switches to give it
22 # switches to be used when it calls our recipes.
23 $switches = "-w \"-I$testlib\" \"-I$utillib\"";
25 my @tests = ( "alltests" );
29 my $list_mode = scalar(grep /^list$/, @tests) != 0;
30 if (grep /^alltests|list$/, @tests) {
32 basename($_) =~ /^[0-9][0-9]-[^\.]*\.t$/
33 } glob(catfile($recipesdir,"*.t"));
38 basename($_) =~ /^[0-9][0-9]-[^\.]*\.t$/
39 } glob(catfile($recipesdir,"*-$_.t"));
45 @tests = map { $_ = basename($_); $_ =~ s/^[0-9][0-9]-//; $_ =~ s/\.t$//;
47 print join("\n", @tests), "\n";
49 @tests = map { abs2rel($_, rel2abs(curdir())); } @tests;
51 runtests(sort @tests);