2002-12-31 Martin Baulig <martin@ximian.com>
[mono.git] / mono / tests / test-driver
1 #!/usr/bin/perl -w
2
3 my $interpreter = shift;
4 my $test = shift;
5 my $output = $test;
6 my $stdout = $test.'.stdout';
7 my $stderr = $test.'.stderr';
8
9 $output =~ s/\.exe$/.output/;
10
11 $| = 0;
12 print "Testing $test... ";
13
14 my $res = system("$interpreter @ARGV $test 2>/dev/null 1>$stdout");
15
16 if ($res) {
17         printf ("failed $? (%d) signal (%d).\n", $? >> 8, $? & 127);
18         exit (1);
19 } elsif (-f $output) {
20         print "failed output.\n" if (read_file ($output) ne read_file ($stdout));
21         exit (1);
22 } else {
23         print "pass.\n";
24         #unlink ($result);
25 }
26 exit (0);
27
28 sub read_file {
29         local ($/);
30         my $out = shift;
31         open (F, "<$out") || die $!;
32         $out = <F>;
33         close(F);
34         return $out;
35 }