blob: 75643a54a201b0489117f513d77d1062c6c8150f (
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
& eval 'exec perl -S $0 $argv:q'
if 0;
# $Id$
# -*- perl -*-
# This file is for running the run_test.pl scripts listed in
# auto_run_tests.lst.
use lib "$ENV{ACE_ROOT}/bin";
use PerlACE::Run_Test;
use English;
use Getopt::Std;
use Cwd;
use Env qw(ACE_ROOT PATH);
################################################################################
if (!getopts ('ac:dos:t') || $opt_h) {
print "auto_run_tests.pl [-a] [-c config] [-h] [-s sandbox] [-o] [-t]\n";
print "\n";
print "Runs the tests listed in auto_run_tests.lst\n";
print "\n";
print "Options:\n";
print " -a ACE tests only\n";
print " -c config Run the tests for the <config> configuration\n";
print " -h display this help\n";
print " -s sandbox Runs each program using a sandbox program\n";
print " -o ORB test only\n";
print " -t TAO tests (other than ORB tests) only\n";
print "\n";
print "Configs: " . $config_list->list_configs () . "\n";
exit (1);
}
my @file_list;
if ($opt_a) {
push (@file_list, "/bin/ace_tests.lst");
}
if ($opt_o) {
push (@file_list, "/bin/tao_orb_tests.lst");
}
if ($opt_t) {
push (@file_list, "/bin/tao_other_tests.lst");
}
if (scalar(@file_list) == 0) {
push (@file_list, "/bin/ace_tests.lst");
push (@file_list, "/bin/tao_orb_tests.lst");
push (@file_list, "/bin/tao_other_tests.lst");
}
foreach my$test_lst (@file_list) {
my $config_list = new PerlACE::ConfigList;
$config_list->load ($ACE_ROOT.$test_lst);
# Insures that we search for stuff in the current directory.
$PATH .= $Config::Config{path_sep} . '.';
foreach $test ($config_list->valid_entries ()) {
my $directory = ".";
my $program = ".";
if ($test =~ /(.*)\/([^\/]*)$/) {
$directory = $1;
$program = $2;
}
else {
$program = $test;
}
print "auto_run_tests: $test\n";
chdir ($ACE_ROOT."/$directory")
|| die "Error: Cannot chdir to $ACE_ROOT/$directory";
if ($program =~ /(.*?) (.*)/)
{
if (! -e $1)
{
print STDERR "Error: $directory.$1 does not exist\n";
next;
}
}
else
{
if (! -e $program)
{
print STDERR "Error: $directory.$program does not exist\n";
next;
}
}
### Genrate the -ExeSubDir and -Config options
my $inherited_options = " -ExeSubDir $PerlACE::Process::ExeSubDir ";
foreach my $config ($config_list->my_config_list ()) {
$inherited_options .= " -Config $config ";
}
$cmd = '';
if ($opt_s) {
$cmd = "$opt_s \"perl $program $inherited_options\"";
}
else {
$cmd = $program.$inherited_options;
}
my $result = 0;
if (defined $opt_d) {
print "Running: $cmd\n";
}
else {
$result = system ($cmd);
}
if ($result > 0) {
print "Error: $test returned with status $result\n";
}
}
}
|