-x $test || (print "isn't executable.\n");
if ($type eq 'perl') {
- open(RESULTS, "./$test |") || (print "can't run.\n"); }
+ my $run = "./$test |";
+ open(RESULTS, $run) || (print "can't run '$run': $!\n");
+ }
else {
- open(RESULTS, "./perl -I../lib ../utils/perlcc ./$test -run -verbose dcf -log ../compilelog |") or print "can't compile.\n";
+ my $compile =
+ "./perl -I../lib ../utils/perlcc -o ./$test.plc ./$test "
+ ." && ./$test.plc |";
+ open(RESULTS, $compile)
+ or print "can't compile '$compile': $!.\n";
+ unlink "./$test.plc";
}
}
else {
}
if ($type eq 'perl') {
- open(RESULTS,"./perl$switch -I../lib -Mutf8 $test |") || (print "can't run.\n");
+ my $run = "./perl$switch -I../lib -Mutf8 $test |";
+ open(RESULTS, $run) or
+ print "can't run '$run': $!.\n";
}
else {
- open(RESULTS, "./perl -I../lib ../utils/perlcc -Mutf8 ./$test -run -verbose dcf -log ../compilelog |") or print "can't compile.\n";
+ my $compile = "./perl -I../lib ../utils/perlcc -Mutf8 ./$test -run -verbose dcf -log ../compilelog |";
+ open(RESULTS, $compile) or
+ print "can't compile '$compile': $!.\n";
}
}
$ok = 0;
$next = $1, $ok = 0, last if /^not ok ([0-9]*)/;
if (/^ok (\d+)(\s*#.*)?$/ && $1 == $next) {
$next = $next + 1;
+ }
+ elsif (/^Bail out!\s*(.*)/i) { # magic words
+ die "FAILED--Further testing stopped" . ($1 ? ": $1\n" : ".\n");
}
else {
$ok = 0;