Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / mono / benchmark / 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 for ($c = 20 - length ($test); $c > 0; $c--) { print " "; }
15
16 my $res = system("/usr/bin/time -o .res -f '%U' $interpreter @ARGV $test 2>/dev/null 1>$stdout");
17
18 if ($res) {
19         printf ("failed $? (%d) signal (%d).\n", $? >> 8, $? & 127);
20         exit (1);
21 } elsif (-f $output) {
22         print "failed output.\n" if (read_file ($output) ne read_file ($stdout));
23         exit (1);
24 } else {
25         $t = `cat .res`;
26         $t =~ s/\n//;
27         print "pass. $t\n";
28         #unlink ($result);
29 }
30 exit (0);
31
32 sub read_file {
33         local ($/);
34         my $out = shift;
35         open (F, "<$out") || die $!;
36         $out = <F>;
37         close(F);
38         return $out;
39 }