Fix test suites invoked in the wrong directory
Running test suites from another directory only works when the auto-chdir
code in host_test.function is enabled, which is platform-dependent and
configuration-dependent.
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
diff --git a/tests/scripts/run-test-suites.pl b/tests/scripts/run-test-suites.pl
index 8274210..7f20ae0 100755
--- a/tests/scripts/run-test-suites.pl
+++ b/tests/scripts/run-test-suites.pl
@@ -85,8 +85,11 @@
for my $suite_path (@suites)
{
- my $suite = $suite_path;
- $suite =~ s!.*/!!;
+ my ($dir, $suite) = ('.', $suite_path);
+ if ($suite =~ m!(.*)/([^/]*)!) {
+ $dir = $1;
+ $suite = $2;
+ }
print "$suite ", "." x ( 72 - length($suite) - 2 - 4 ), " ";
if( $suite =~ /$skip_re/o ) {
print "SKIP\n";
@@ -94,7 +97,7 @@
next;
}
- my $command = "$prefix$suite_path";
+ my $command = "cd $dir && $prefix$suite";
if( $verbose ) {
$command .= ' -v';
}