summaryrefslogtreecommitdiff
path: root/TAO/tests/GIOP_Fragments/Java_Big_Request/run_test.pl
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tests/GIOP_Fragments/Java_Big_Request/run_test.pl')
-rwxr-xr-xTAO/tests/GIOP_Fragments/Java_Big_Request/run_test.pl53
1 files changed, 53 insertions, 0 deletions
diff --git a/TAO/tests/GIOP_Fragments/Java_Big_Request/run_test.pl b/TAO/tests/GIOP_Fragments/Java_Big_Request/run_test.pl
new file mode 100755
index 00000000000..e8514914409
--- /dev/null
+++ b/TAO/tests/GIOP_Fragments/Java_Big_Request/run_test.pl
@@ -0,0 +1,53 @@
+eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}'
+ & eval 'exec perl -S $0 $argv:q'
+ if 0;
+
+# $Id$
+# -*- perl -*-
+
+use lib '../../../../bin';
+use PerlACE::Run_Test;
+
+$status = 0;
+$iorfile = PerlACE::LocalFile ('server.ior');
+$TARGETHOSTNAME = 'localhost';
+$port = PerlACE::uniqueid () + 12000;
+
+## No ORB fragments GIOP 1.0 messages.
+## The JDK ORB only fragments GIOP 1.2 messages.
+foreach my $giop ('1.2') {
+ print "Testing GIOP $giop Fragmentation\n";
+ unlink $iorfile;
+
+ $SV = new PerlACE::Process ('server',
+ '-ORBEndpoint ' .
+ "iiop://$giop\@$TARGETHOSTNAME" . ":$port");
+ $SV->Spawn ();
+
+ if (PerlACE::waitforfile_timed ($iorfile, 15) == -1) {
+ print STDERR "ERROR: cannot find file <$iorfile>\n";
+ $SV->Kill (); $SV->TimedWait (1);
+ exit 1;
+ }
+
+ my($cl) = system('java client');
+ if ($cl != 0) {
+ print STDERR "ERROR: client returned $cl\n";
+ ++$status;
+ }
+
+ $server = $SV->WaitKill (20);
+
+ if ($server != 0) {
+ print STDERR "ERROR: server returned $server\n";
+ ++$status;
+ }
+
+ unlink $iorfile;
+
+ if ($status) {
+ last;
+ }
+}
+
+exit $status;