diff options
Diffstat (limited to 'TAO/tests/ZIOP/run_test.pl')
-rwxr-xr-x | TAO/tests/ZIOP/run_test.pl | 89 |
1 files changed, 49 insertions, 40 deletions
diff --git a/TAO/tests/ZIOP/run_test.pl b/TAO/tests/ZIOP/run_test.pl index a036aecd5f3..f770bc27055 100755 --- a/TAO/tests/ZIOP/run_test.pl +++ b/TAO/tests/ZIOP/run_test.pl @@ -23,48 +23,57 @@ my $client = PerlACE::TestTarget::create_target (2) || die "Create target 2 fail my $iorbase = "server.ior"; my $server_iorfile = $server->LocalFile ($iorbase); my $client_iorfile = $client->LocalFile ($iorbase); -$server->DeleteFile($iorbase); -$client->DeleteFile($iorbase); - -$SV = $server->CreateProcess ("server", "-o $server_iorfile -ORBdebuglevel $debug_level"); -$CL = $client->CreateProcess ("client", "-k file://$client_iorfile -ORBdebuglevel $debug_level"); -$server_status = $SV->Spawn (); - -if ($server_status != 0) { - print STDERR "ERROR: server returned $server_status\n"; - exit 1; -} - -if ($server->WaitForFileTimed ($iorbase, - $server->ProcessStartWaitInterval()) == -1) { - print STDERR "ERROR: cannot find file <$server_iorfile>\n"; - $SV->Kill (); $SV->TimedWait (1); - exit 1; -} - -if ($server->GetFile ($iorbase) == -1) { - print STDERR "ERROR: cannot retrieve file <$server_iorfile>\n"; - $SV->Kill (); $SV->TimedWait (1); - exit 1; -} -if ($client->PutFile ($iorbase) == -1) { - print STDERR "ERROR: cannot set file <$client_iorfile>\n"; - $SV->Kill (); $SV->TimedWait (1); - exit 1; -} - -$client_status = $CL->SpawnWaitKill ($client->ProcessStartWaitInterval()); - -if ($client_status != 0) { - print STDERR "ERROR: client returned $client_status\n"; - $status = 1; -} -$server_status = $SV->WaitKill ($server->ProcessStopWaitInterval()); -if ($server_status != 0) { - print STDERR "ERROR: server returned $server_status\n"; - $status = 1; +for ($test = 1; $test <= 4 && $status == 0; ++$test) +{ + $server->DeleteFile($iorbase); + $client->DeleteFile($iorbase); + + $SV = $server->CreateProcess ("server", "-o $server_iorfile -t $test -ORBdebuglevel $debug_level"); + $CL = $client->CreateProcess ("client", "-k file://$client_iorfile -t $test -ORBdebuglevel $debug_level"); + $server_status = $SV->Spawn (); + + print "\n\n\n====== START TEST $test/4 ======\n\n\n"; + + if ($server_status != 0) { + print STDERR "ERROR: server returned $server_status\n"; + exit 1; + } + + if ($server->WaitForFileTimed ($iorbase, + $server->ProcessStartWaitInterval()) == -1) { + print STDERR "ERROR: cannot find file <$server_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); + exit 1; + } + + if ($server->GetFile ($iorbase) == -1) { + print STDERR "ERROR: cannot retrieve file <$server_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); + exit 1; + } + if ($client->PutFile ($iorbase) == -1) { + print STDERR "ERROR: cannot set file <$client_iorfile>\n"; + $SV->Kill (); $SV->TimedWait (1); + exit 1; + } + + $client_status = $CL->SpawnWaitKill ($client->ProcessStartWaitInterval()); + + if ($client_status != 0) { + print STDERR "ERROR: client returned $client_status\n"; + $status = 1; + } + + $server_status = $SV->WaitKill ($server->ProcessStopWaitInterval()); + + if ($server_status != 0) { + print STDERR "ERROR: server returned $server_status\n"; + $status = 1; + } + $server->DeleteFile($iorbase); + $client->DeleteFile($iorbase); } $server->GetStderrLog(); |