#!./perl # Last change: Fri Jan 10 09:57:03 WET 1997 # This is written in a peculiar style, since we're trying to avoid # most of the constructs we'll be testing for. $| = 1; if ($ARGV[0] eq '-v') { $verbose = 1; shift; } chdir 't' if -f 't/TEST'; die "You need to run \"make test\" first to set things up.\n" unless -e 'perl' or -e 'perl.exe'; $ENV{EMXSHELL} = 'sh'; # For OS/2 if ($ARGV[0] eq '') { push( @ARGV, `dir/s/b base` ); push( @ARGV, `dir/s/b comp` ); push( @ARGV, `dir/s/b cmd` ); push( @ARGV, `dir/s/b io` ); push( @ARGV, `dir/s/b op` ); push( @ARGV, `dir/s/b pragma` ); push( @ARGV, `dir/s/b lib` ); grep( chomp, @ARGV ); @ARGV = grep( /\.t$/, @ARGV ); grep( s/.*t\\//, @ARGV ); # @ARGV = split(/[ \n]/, # `echo base/*.t comp/*.t cmd/*.t io/*.t; echo op/*.t pragma/*.t lib/*.t`); } else { @ARGV = map(glob($_),@ARGV); } if ($^O eq 'os2' || $^O eq 'MSWin32' || $^O eq 'qnx' || 1) { $sharpbang = 0; } else { open(CONFIG, "../config.sh"); while () { if (/sharpbang='(.*)'/) { $sharpbang = ($1 eq '#!'); last; } } close(CONFIG); } $bad = 0; $good = 0; $total = @ARGV; while ($test = shift) { if ($test =~ /^$/) { next; } $te = $test; chop($te); print "$te" . '.' x (18 - length($te)); if ($sharpbang) { open(results,"./$test |") || (print "can't run.\n"); } else { open(script,"$test") || die "Can't run $test.\n"; $_ =