summaryrefslogtreecommitdiff
path: root/TAO/tests/CDR/run_test.pl
blob: 45a624f538f643762b5a355af12f124e34b4cbb4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
    & eval 'exec perl -S $0 $argv:q'
    if 0;

# $Id$
# -*- perl -*-

use lib "../../../bin";
require ACEutils;
use Cwd;

$brace="\#\#\#\#\#";
%tests = ("basic_types" => "-n 256 -l 10",
	  "tc" => "",
	  "growth" => "-l 64 -h 256 -s 4 -n 10",
	  "alignment" => "",
	  "allocator" => "");
$test = "";
$args = "";
$cwd  = getcwd();
$| = 1;
print STDERR "\n";

for($i = 0; $i <= $#ARGV; $i++) {
  if ($ARGV[$i] eq '-chorus') {
    $i++;
    if (defined $ARGV[$i]) {
      $EXEPREFIX = "rsh $ARGV[$i] arun $cwd$DIR_SEPARATOR";
    }
    else {
      print STDERR "The -chorus option requires the hostname of the target\n";
      exit(1);
    }
  }
}

sub run_test
{
    #my $test = shift (@tests);
    my $args = shift (@argslist);

    print STDERR "\n$brace $test $args test BEGUN\n";
    $TST = Process::Create  ($EXEPREFIX."$test".$EXE_EXT,
                             "$args");
    print STDERR "\t$test RUNNING\n";
    $retval = $TST->TimedWait (90);
    if ($retval == -1) {
      print STDERR "ERROR $brace $test $args TIMEOUT\n";
      $TST->Kill (); $TST->TimedWait (5);
    } elsif ($retval != 0) { 
      print STDERR "ERROR $brace $test $args, exit value $retval\n";
    }
    print STDERR "$brace $test FINISHED successfully\n";
}

while (($test,$args) = each %tests)
{
    run_test ($test, $args);
}

exit 0;