r2corba 1.4.1-x86-mingw32 → 1.5.1-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -7
- data/CHANGES +173 -159
- data/LICENSE +59 -59
- data/README +62 -62
- data/THANKS +54 -52
- data/bin/r2corba +1 -1
- data/bin/ridlc +1 -1
- data/bin/rins +1 -1
- data/lib/corba.rb +16 -16
- data/lib/corba/cbase/IORMap.rb +33 -33
- data/lib/corba/cbase/ORB.rb +237 -231
- data/lib/corba/cbase/Request.rb +133 -133
- data/lib/corba/cbase/Streams.rb +129 -129
- data/lib/corba/cbase/Stub.rb +19 -19
- data/lib/corba/cbase/Typecode.rb +441 -441
- data/lib/corba/cbase/Values.rb +129 -129
- data/lib/corba/cbase/exception.rb +66 -66
- data/lib/corba/cbase/poa.rb +23 -23
- data/lib/corba/cbase/policies.rb +77 -77
- data/lib/corba/cbase/post_require.rb +13 -13
- data/lib/corba/cbase/require.rb +28 -28
- data/lib/corba/cmds/base.rb +85 -85
- data/lib/corba/cmds/test.rb +30 -30
- data/lib/corba/common/Any.rb +91 -91
- data/lib/corba/common/IDL.rb +104 -104
- data/lib/corba/common/ORB.rb +368 -368
- data/lib/corba/common/Object.rb +208 -208
- data/lib/corba/common/Request.rb +19 -19
- data/lib/corba/common/Servant.rb +108 -108
- data/lib/corba/common/Struct.rb +21 -21
- data/lib/corba/common/Stub.rb +79 -79
- data/lib/corba/common/Typecode.rb +1121 -1121
- data/lib/corba/common/Union.rb +55 -55
- data/lib/corba/common/Values.rb +91 -91
- data/lib/corba/common/const.rb +22 -22
- data/lib/corba/common/exception.rb +68 -68
- data/lib/corba/common/require.rb +27 -27
- data/lib/corba/common/version.rb +22 -22
- data/lib/corba/idl/IDL.rb +21 -21
- data/lib/corba/idl/IORTable.pidl +62 -62
- data/lib/corba/idl/TAO_Ext.pidl +46 -46
- data/lib/corba/idl/require.rb +20 -20
- data/lib/corba/jbase/Any.rb +273 -273
- data/lib/corba/jbase/IORMap.rb +35 -35
- data/lib/corba/jbase/ORB.rb +112 -99
- data/lib/corba/jbase/Object.rb +99 -98
- data/lib/corba/jbase/Request.rb +225 -225
- data/lib/corba/jbase/Servant.rb +247 -246
- data/lib/corba/jbase/ServerRequest.rb +127 -127
- data/lib/corba/jbase/Streams.rb +670 -670
- data/lib/corba/jbase/Stub.rb +38 -38
- data/lib/corba/jbase/Typecode.rb +520 -520
- data/lib/corba/jbase/Values.rb +173 -173
- data/lib/corba/jbase/exception.rb +106 -106
- data/lib/corba/jbase/poa.rb +228 -228
- data/lib/corba/jbase/policies.rb +299 -299
- data/lib/corba/jbase/post_require.rb +14 -14
- data/lib/corba/jbase/require.rb +89 -86
- data/lib/corba/naming.rb +14 -14
- data/lib/corba/naming_service.rb +15 -15
- data/lib/corba/poa.rb +15 -15
- data/lib/corba/policies.rb +18 -18
- data/lib/corba/require.rb +17 -17
- data/lib/corba/svcs/ins/cos_naming.rb +426 -426
- data/lib/corba/svcs/ins/ins.rb +526 -526
- data/lib/corba/svcs/ins/naming_service.rb +119 -119
- data/lib/ridlbe/ruby/config.rb +336 -336
- data/lib/ridlbe/ruby/orb.pidlc +0 -0
- data/lib/ridlbe/ruby/require.rb +16 -16
- data/lib/ridlbe/ruby/walker.rb +1582 -1582
- data/mkrf_conf_bingem.rb +151 -101
- data/rakelib/bin.rake +80 -80
- data/rakelib/bin.rb +145 -145
- data/rakelib/build.rake +87 -87
- data/rakelib/config.rake +51 -51
- data/rakelib/config.rb +543 -449
- data/rakelib/ext.rake +242 -242
- data/rakelib/ext.rb +316 -308
- data/rakelib/ext_r2tao.rb +235 -232
- data/rakelib/gem.rake +235 -211
- data/rakelib/gem.rb +145 -145
- data/rakelib/package.rake +26 -26
- data/rakelib/test.rake +23 -23
- data/test/BiDirectional/Test.idl +34 -34
- data/test/BiDirectional/client.rb +131 -131
- data/test/BiDirectional/run_test.rb +68 -68
- data/test/BiDirectional/server.ior +1 -1
- data/test/BiDirectional/server.rb +169 -169
- data/test/CORBA_Services/Naming/BindingIterator/Test.idl +27 -27
- data/test/CORBA_Services/Naming/BindingIterator/client.rb +121 -121
- data/test/CORBA_Services/Naming/BindingIterator/ins.ior +1 -1
- data/test/CORBA_Services/Naming/BindingIterator/run_test.rb +82 -82
- data/test/CORBA_Services/Naming/BindingIterator/server.rb +109 -109
- data/test/CORBA_Services/Naming/Corbaname/Test.idl +27 -27
- data/test/CORBA_Services/Naming/Corbaname/client.rb +85 -85
- data/test/CORBA_Services/Naming/Corbaname/ins.ior +1 -1
- data/test/CORBA_Services/Naming/Corbaname/run_test.rb +88 -88
- data/test/CORBA_Services/Naming/Corbaname/server.rb +135 -135
- data/test/CORBA_Services/Naming/Simple/Test.idl +27 -27
- data/test/CORBA_Services/Naming/Simple/client.rb +84 -84
- data/test/CORBA_Services/Naming/Simple/ins.ior +1 -1
- data/test/CORBA_Services/Naming/Simple/run_test.rb +82 -82
- data/test/CORBA_Services/Naming/Simple/server.rb +109 -109
- data/test/Collocation/Diamond.idl +39 -39
- data/test/Collocation/run_test.rb +52 -52
- data/test/Collocation/test.rb +195 -195
- data/test/Connect_Timeout/Test.idl +27 -27
- data/test/Connect_Timeout/client.rb +111 -111
- data/test/Connect_Timeout/run_test.rb +52 -52
- data/test/DII/Test.idl +27 -27
- data/test/DII/client.rb +115 -115
- data/test/DII/run_test.rb +69 -69
- data/test/DII/server.ior +1 -1
- data/test/DII/server.rb +95 -95
- data/test/DSI/Test.idl +27 -27
- data/test/DSI/client.rb +66 -66
- data/test/DSI/run_test.rb +69 -69
- data/test/DSI/server.ior +1 -1
- data/test/DSI/server.rb +106 -106
- data/test/Exceptions/Test.idl +48 -48
- data/test/Exceptions/client.rb +117 -117
- data/test/Exceptions/run_test.rb +69 -69
- data/test/Exceptions/server.ior +1 -1
- data/test/Exceptions/server.rb +131 -131
- data/test/Hello/Test.idl +27 -27
- data/test/Hello/client.rb +78 -78
- data/test/Hello/run_test.rb +71 -71
- data/test/Hello/server.rb +95 -95
- data/test/IDL_Test/Test.idl +113 -113
- data/test/IDL_Test/Test_inc.idl +17 -17
- data/test/IDL_Test/client.rb +102 -102
- data/test/IDL_Test/run_test.rb +69 -69
- data/test/IDL_Test/server.ior +1 -1
- data/test/IDL_Test/server.rb +99 -99
- data/test/IORMap/Test.idl +27 -27
- data/test/IORMap/client.rb +73 -73
- data/test/IORMap/run_test.rb +69 -69
- data/test/IORMap/server.ior +1 -1
- data/test/IORMap/server.rb +114 -114
- data/test/IORTable/Test.idl +27 -27
- data/test/IORTable/client.rb +75 -75
- data/test/IORTable/run_test.rb +69 -69
- data/test/IORTable/server.ior +1 -1
- data/test/IORTable/server.rb +130 -130
- data/test/Implicit_Conversion/Test.idl +31 -31
- data/test/Implicit_Conversion/client.rb +110 -110
- data/test/Implicit_Conversion/run_test.rb +69 -69
- data/test/Implicit_Conversion/server.ior +1 -1
- data/test/Implicit_Conversion/server.rb +99 -99
- data/test/Multi_Threading/Multiple_ORB/Test.idl +27 -27
- data/test/Multi_Threading/Multiple_ORB/client.rb +82 -82
- data/test/Multi_Threading/Multiple_ORB/run_test.rb +71 -71
- data/test/Multi_Threading/Multiple_ORB/server.rb +108 -108
- data/test/Multi_Threading/Multiple_ORB/server0.ior +1 -1
- data/test/Multi_Threading/Multiple_ORB/server1.ior +1 -1
- data/test/Multi_Threading/Simple/Test.idl +27 -27
- data/test/Multi_Threading/Simple/client.rb +93 -88
- data/test/Multi_Threading/Simple/run_test.rb +69 -69
- data/test/Multi_Threading/Simple/server.ior +1 -1
- data/test/Multi_Threading/Simple/server.rb +117 -117
- data/test/Multi_Threading/Threads/Test.idl +31 -31
- data/test/Multi_Threading/Threads/client.rb +80 -80
- data/test/Multi_Threading/Threads/run_test.rb +76 -76
- data/test/Multi_Threading/Threads/server.ior +1 -1
- data/test/Multi_Threading/Threads/server.rb +119 -119
- data/test/Multi_Threading/Threads/watchdog.ior +1 -1
- data/test/Multi_Threading/Threads/watchdog.rb +87 -87
- data/test/Multiple_Servant_Interfaces/Test.idl +34 -34
- data/test/Multiple_Servant_Interfaces/client.rb +70 -70
- data/test/Multiple_Servant_Interfaces/run_test.rb +69 -69
- data/test/Multiple_Servant_Interfaces/server.ior +1 -1
- data/test/Multiple_Servant_Interfaces/server.rb +102 -102
- data/test/Nil/Test.idl +27 -27
- data/test/Nil/run_test.rb +52 -52
- data/test/Nil/test.rb +78 -78
- data/test/OBV/AbstractInterface/client.rb +179 -179
- data/test/OBV/AbstractInterface/run_test.rb +69 -69
- data/test/OBV/AbstractInterface/server.ior +1 -1
- data/test/OBV/AbstractInterface/server.rb +149 -149
- data/test/OBV/AbstractInterface/test.idl +53 -53
- data/test/OBV/Custom/OBV.idl +18 -18
- data/test/OBV/Custom/OBV_impl.rb +40 -40
- data/test/OBV/Custom/client.rb +86 -86
- data/test/OBV/Custom/run_test.rb +69 -69
- data/test/OBV/Custom/server.ior +1 -1
- data/test/OBV/Custom/server.rb +100 -100
- data/test/OBV/Simple/OBV.idl +15 -15
- data/test/OBV/Simple/OBV_impl.rb +26 -26
- data/test/OBV/Simple/client.rb +86 -86
- data/test/OBV/Simple/run_test.rb +69 -69
- data/test/OBV/Simple/server.ior +1 -1
- data/test/OBV/Simple/server.rb +100 -100
- data/test/OBV/Simple_Event/Event.idl +15 -15
- data/test/OBV/Simple_Event/Event_impl.rb +26 -26
- data/test/OBV/Simple_Event/client.rb +86 -86
- data/test/OBV/Simple_Event/run_test.rb +69 -69
- data/test/OBV/Simple_Event/server.ior +1 -1
- data/test/OBV/Simple_Event/server.rb +100 -100
- data/test/OBV/Supports/client.rb +116 -116
- data/test/OBV/Supports/run_test.rb +69 -69
- data/test/OBV/Supports/server.ior +1 -1
- data/test/OBV/Supports/server.rb +103 -103
- data/test/OBV/Supports/supports.idl +33 -33
- data/test/OBV/Supports/supports_impl.rb +57 -57
- data/test/OBV/Tree/client.rb +116 -116
- data/test/OBV/Tree/run_test.rb +69 -69
- data/test/OBV/Tree/server.ior +1 -1
- data/test/OBV/Tree/server.rb +117 -117
- data/test/OBV/Tree/test.idl +32 -32
- data/test/OBV/Truncatable/Extra.idl +27 -27
- data/test/OBV/Truncatable/Truncatable.idl +105 -105
- data/test/OBV/Truncatable/Truncatable_impl.rb +86 -86
- data/test/OBV/Truncatable/client.rb +279 -279
- data/test/OBV/Truncatable/run_test.rb +69 -69
- data/test/OBV/Truncatable/server.ior +1 -1
- data/test/OBV/Truncatable/server.rb +89 -89
- data/test/OBV/ValueBox/client.rb +497 -497
- data/test/OBV/ValueBox/run_test.rb +69 -69
- data/test/OBV/ValueBox/server.ior +1 -1
- data/test/OBV/ValueBox/server.rb +271 -271
- data/test/OBV/ValueBox/valuebox.idl +101 -101
- data/test/OBV/ValueBox/vb_basic.idl +75 -75
- data/test/OBV/ValueBox/vb_struct.idl +68 -68
- data/test/OBV/ValueBox/vb_union.idl +21 -21
- data/test/Object/Test.idl +27 -27
- data/test/Object/client.rb +112 -103
- data/test/Object/run_test.rb +69 -69
- data/test/Object/server.ior +1 -1
- data/test/Object/server.rb +126 -126
- data/test/POA/Test.idl +27 -27
- data/test/POA/run_test.rb +52 -52
- data/test/POA/test.rb +111 -111
- data/test/Param_Test/Test.idl +182 -182
- data/test/Param_Test/client.rb +277 -277
- data/test/Param_Test/run_test.rb +69 -69
- data/test/Param_Test/server.ior +1 -1
- data/test/Param_Test/server.rb +296 -296
- data/test/Performance/Simple/Test.idl +27 -27
- data/test/Performance/Simple/client.rb +90 -90
- data/test/Performance/Simple/run_test.rb +69 -69
- data/test/Performance/Simple/server.ior +1 -1
- data/test/Performance/Simple/server.rb +95 -95
- data/test/Policies/Test.idl +27 -27
- data/test/Policies/run_test.rb +52 -52
- data/test/Policies/test.rb +144 -144
- data/test/Timeout/client.rb +207 -207
- data/test/Timeout/run_test.rb +69 -69
- data/test/Timeout/server.ior +1 -1
- data/test/Timeout/server.rb +109 -109
- data/test/Timeout/test.idl +19 -19
- data/test/lib/assert.rb +43 -43
- data/test/lib/test.rb +542 -542
- data/test/test_runner.rb +193 -193
- metadata +141 -137
data/test/Exceptions/client.rb
CHANGED
@@ -1,118 +1,118 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
#
|
3
|
-
# Author: Martin Corino
|
4
|
-
#
|
5
|
-
# This program is free software; you can redistribute it and/or
|
6
|
-
# modify it under the terms of the R2CORBA LICENSE which is
|
7
|
-
# included with this program.
|
8
|
-
#
|
9
|
-
# Copyright (c) Remedy IT Expertise BV
|
10
|
-
# Chamber of commerce Rotterdam nr.276339, The Netherlands
|
11
|
-
#--------------------------------------------------------------------
|
12
|
-
|
13
|
-
require 'optparse'
|
14
|
-
require 'lib/assert.rb'
|
15
|
-
include TestUtil::Assertions
|
16
|
-
|
17
|
-
OPTIONS = {
|
18
|
-
:use_implement => false,
|
19
|
-
:orb_debuglevel => 0,
|
20
|
-
:iorfile => 'file://server.ior'
|
21
|
-
}
|
22
|
-
|
23
|
-
ARGV.options do |opts|
|
24
|
-
script_name = File.basename($0)
|
25
|
-
opts.banner = "Usage: ruby #{script_name} [options]"
|
26
|
-
|
27
|
-
opts.separator ""
|
28
|
-
|
29
|
-
opts.on("--k IORFILE",
|
30
|
-
"Set IOR.",
|
31
|
-
"Default: 'file://server.ior'") { |v| OPTIONS[:iorfile]=v }
|
32
|
-
opts.on("--d LVL",
|
33
|
-
"Set ORBDebugLevel value.",
|
34
|
-
"Default: 0") { |v| OPTIONS[:orb_debuglevel]=v }
|
35
|
-
opts.on("--use-implement",
|
36
|
-
"Load IDL through CORBA.implement() instead of precompiled code.",
|
37
|
-
"Default: off") { |v| OPTIONS[:use_implement]=v }
|
38
|
-
|
39
|
-
opts.separator ""
|
40
|
-
|
41
|
-
opts.on("-h", "--help",
|
42
|
-
"Show this help message.") { puts opts; exit }
|
43
|
-
|
44
|
-
opts.parse!
|
45
|
-
end
|
46
|
-
|
47
|
-
if OPTIONS[:use_implement]
|
48
|
-
require 'corba'
|
49
|
-
CORBA.implement('Test.idl', OPTIONS)
|
50
|
-
else
|
51
|
-
require 'TestC.rb'
|
52
|
-
end
|
53
|
-
|
54
|
-
orb = CORBA.ORB_init(["-ORBDebugLevel", OPTIONS[:orb_debuglevel]], 'myORB')
|
55
|
-
|
56
|
-
begin
|
57
|
-
|
58
|
-
obj = orb.string_to_object(OPTIONS[:iorfile])
|
59
|
-
|
60
|
-
hello_obj = Test::Hello._narrow(obj)
|
61
|
-
|
62
|
-
3.times { |i|
|
63
|
-
begin
|
64
|
-
hello_obj.test_exception
|
65
|
-
rescue Test::ExOne => ex1
|
66
|
-
assert "ERROR: got exception Test::ExOne when not expected" do
|
67
|
-
(i % 3) == 0 && ex1.code == (i+1)
|
68
|
-
end
|
69
|
-
puts "Caught expected exception Test::ExOne{why=#{ex1.why},code=#{ex1.code})"
|
70
|
-
rescue CORBA::UNKNOWN => exu
|
71
|
-
assert "ERROR: got unexpected unknown userexception" do
|
72
|
-
(i % 3) == 1
|
73
|
-
end
|
74
|
-
puts "Caught expected unknown userexception"
|
75
|
-
rescue Exception => ex
|
76
|
-
assert "ERROR: unknown exception caught\n#{ex}", false
|
77
|
-
else
|
78
|
-
assert_not "ERROR: no exception caught where one was expected" do
|
79
|
-
(i % 3) != 2
|
80
|
-
end
|
81
|
-
end
|
82
|
-
}
|
83
|
-
|
84
|
-
assert_except 'ERROR: expected exception', Test::ExOne do
|
85
|
-
hello_obj.myString
|
86
|
-
end
|
87
|
-
|
88
|
-
hello_obj.myString = 'test'
|
89
|
-
|
90
|
-
assert 'ERROR', 'test' == hello_obj.myString
|
91
|
-
|
92
|
-
|
93
|
-
assert_except 'ERROR: expected exception', Test::ExOne do
|
94
|
-
hello_obj.myCount = 200 # can be max 100
|
95
|
-
end
|
96
|
-
|
97
|
-
|
98
|
-
assert_except 'ERROR: expected exception', Test::ExOne do
|
99
|
-
hello_obj.myResult # myCount needs to be set successfully first
|
100
|
-
end
|
101
|
-
|
102
|
-
hello_obj.myCount = 33
|
103
|
-
|
104
|
-
assert 'ERROR', 99 == hello_obj.myResult
|
105
|
-
|
106
|
-
hello_obj.shutdown()
|
107
|
-
|
108
|
-
assert_not "ERROR: Object is reported nil!", CORBA::is_nil(hello_obj)
|
109
|
-
|
110
|
-
hello_obj._free_ref()
|
111
|
-
|
112
|
-
assert "ERROR: Object is reported non-nil!", CORBA::is_nil(hello_obj)
|
113
|
-
|
114
|
-
ensure
|
115
|
-
|
116
|
-
orb.destroy()
|
117
|
-
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
#
|
3
|
+
# Author: Martin Corino
|
4
|
+
#
|
5
|
+
# This program is free software; you can redistribute it and/or
|
6
|
+
# modify it under the terms of the R2CORBA LICENSE which is
|
7
|
+
# included with this program.
|
8
|
+
#
|
9
|
+
# Copyright (c) Remedy IT Expertise BV
|
10
|
+
# Chamber of commerce Rotterdam nr.276339, The Netherlands
|
11
|
+
#--------------------------------------------------------------------
|
12
|
+
|
13
|
+
require 'optparse'
|
14
|
+
require 'lib/assert.rb'
|
15
|
+
include TestUtil::Assertions
|
16
|
+
|
17
|
+
OPTIONS = {
|
18
|
+
:use_implement => false,
|
19
|
+
:orb_debuglevel => 0,
|
20
|
+
:iorfile => 'file://server.ior'
|
21
|
+
}
|
22
|
+
|
23
|
+
ARGV.options do |opts|
|
24
|
+
script_name = File.basename($0)
|
25
|
+
opts.banner = "Usage: ruby #{script_name} [options]"
|
26
|
+
|
27
|
+
opts.separator ""
|
28
|
+
|
29
|
+
opts.on("--k IORFILE",
|
30
|
+
"Set IOR.",
|
31
|
+
"Default: 'file://server.ior'") { |v| OPTIONS[:iorfile]=v }
|
32
|
+
opts.on("--d LVL",
|
33
|
+
"Set ORBDebugLevel value.",
|
34
|
+
"Default: 0") { |v| OPTIONS[:orb_debuglevel]=v }
|
35
|
+
opts.on("--use-implement",
|
36
|
+
"Load IDL through CORBA.implement() instead of precompiled code.",
|
37
|
+
"Default: off") { |v| OPTIONS[:use_implement]=v }
|
38
|
+
|
39
|
+
opts.separator ""
|
40
|
+
|
41
|
+
opts.on("-h", "--help",
|
42
|
+
"Show this help message.") { puts opts; exit }
|
43
|
+
|
44
|
+
opts.parse!
|
45
|
+
end
|
46
|
+
|
47
|
+
if OPTIONS[:use_implement]
|
48
|
+
require 'corba'
|
49
|
+
CORBA.implement('Test.idl', OPTIONS)
|
50
|
+
else
|
51
|
+
require 'TestC.rb'
|
52
|
+
end
|
53
|
+
|
54
|
+
orb = CORBA.ORB_init(["-ORBDebugLevel", OPTIONS[:orb_debuglevel]], 'myORB')
|
55
|
+
|
56
|
+
begin
|
57
|
+
|
58
|
+
obj = orb.string_to_object(OPTIONS[:iorfile])
|
59
|
+
|
60
|
+
hello_obj = Test::Hello._narrow(obj)
|
61
|
+
|
62
|
+
3.times { |i|
|
63
|
+
begin
|
64
|
+
hello_obj.test_exception
|
65
|
+
rescue Test::ExOne => ex1
|
66
|
+
assert "ERROR: got exception Test::ExOne when not expected" do
|
67
|
+
(i % 3) == 0 && ex1.code == (i+1)
|
68
|
+
end
|
69
|
+
puts "Caught expected exception Test::ExOne{why=#{ex1.why},code=#{ex1.code})"
|
70
|
+
rescue CORBA::UNKNOWN => exu
|
71
|
+
assert "ERROR: got unexpected unknown userexception" do
|
72
|
+
(i % 3) == 1
|
73
|
+
end
|
74
|
+
puts "Caught expected unknown userexception"
|
75
|
+
rescue Exception => ex
|
76
|
+
assert "ERROR: unknown exception caught\n#{ex}", false
|
77
|
+
else
|
78
|
+
assert_not "ERROR: no exception caught where one was expected" do
|
79
|
+
(i % 3) != 2
|
80
|
+
end
|
81
|
+
end
|
82
|
+
}
|
83
|
+
|
84
|
+
assert_except 'ERROR: expected exception', Test::ExOne do
|
85
|
+
hello_obj.myString
|
86
|
+
end
|
87
|
+
|
88
|
+
hello_obj.myString = 'test'
|
89
|
+
|
90
|
+
assert 'ERROR', 'test' == hello_obj.myString
|
91
|
+
|
92
|
+
|
93
|
+
assert_except 'ERROR: expected exception', Test::ExOne do
|
94
|
+
hello_obj.myCount = 200 # can be max 100
|
95
|
+
end
|
96
|
+
|
97
|
+
|
98
|
+
assert_except 'ERROR: expected exception', Test::ExOne do
|
99
|
+
hello_obj.myResult # myCount needs to be set successfully first
|
100
|
+
end
|
101
|
+
|
102
|
+
hello_obj.myCount = 33
|
103
|
+
|
104
|
+
assert 'ERROR', 99 == hello_obj.myResult
|
105
|
+
|
106
|
+
hello_obj.shutdown()
|
107
|
+
|
108
|
+
assert_not "ERROR: Object is reported nil!", CORBA::is_nil(hello_obj)
|
109
|
+
|
110
|
+
hello_obj._free_ref()
|
111
|
+
|
112
|
+
assert "ERROR: Object is reported non-nil!", CORBA::is_nil(hello_obj)
|
113
|
+
|
114
|
+
ensure
|
115
|
+
|
116
|
+
orb.destroy()
|
117
|
+
|
118
118
|
end
|
data/test/Exceptions/run_test.rb
CHANGED
@@ -1,69 +1,69 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
#
|
3
|
-
# Author: Martin Corino
|
4
|
-
#
|
5
|
-
# This program is free software; you can redistribute it and/or
|
6
|
-
# modify it under the terms of the R2CORBA LICENSE which is
|
7
|
-
# included with this program.
|
8
|
-
#
|
9
|
-
# Copyright (c) Remedy IT Expertise BV
|
10
|
-
# Chamber of commerce Rotterdam nr.276339, The Netherlands
|
11
|
-
#--------------------------------------------------------------------
|
12
|
-
|
13
|
-
OPTIONS = {
|
14
|
-
:debug_opt => '',
|
15
|
-
:use_implement => '--use-implement'
|
16
|
-
}
|
17
|
-
|
18
|
-
require 'optparse'
|
19
|
-
|
20
|
-
ARGV.options do |opts|
|
21
|
-
script_name = File.basename($0)
|
22
|
-
opts.banner = "Usage: ruby #{script_name} [options]"
|
23
|
-
|
24
|
-
opts.separator ""
|
25
|
-
|
26
|
-
opts.on("-d",
|
27
|
-
"Run with debugging output.",
|
28
|
-
"Default: false") { OPTIONS[:debug_opt] = '--d 10' }
|
29
|
-
opts.on("--use-stubs",
|
30
|
-
"Use stubs generated by RIDL.",
|
31
|
-
"Default: false (uses embedded IDL)") { OPTIONS[:use_implement] = '' }
|
32
|
-
|
33
|
-
opts.separator ""
|
34
|
-
|
35
|
-
opts.on("-h", "--help",
|
36
|
-
"Show this help message.") { puts opts; exit }
|
37
|
-
|
38
|
-
opts.parse!
|
39
|
-
end
|
40
|
-
|
41
|
-
require 'lib/test.rb'
|
42
|
-
include TestUtil
|
43
|
-
|
44
|
-
ior_file = 'server.ior'
|
45
|
-
|
46
|
-
TestUtil.remove_file(ior_file)
|
47
|
-
|
48
|
-
srv = Test.new
|
49
|
-
|
50
|
-
exit(255) if !srv.run('server.rb', "--o #{ior_file} #{OPTIONS[:debug_opt]} #{OPTIONS[:use_implement]}")
|
51
|
-
|
52
|
-
TestUtil.wait_for_file(ior_file, 400)
|
53
|
-
|
54
|
-
clt = Test.new
|
55
|
-
|
56
|
-
if !clt.run('client.rb', "--k file://#{ior_file} #{OPTIONS[:debug_opt]} #{OPTIONS[:use_implement]}")
|
57
|
-
srv.kill(100)
|
58
|
-
exit(255)
|
59
|
-
end
|
60
|
-
|
61
|
-
exrc = clt.wait(400)
|
62
|
-
|
63
|
-
if exrc ==0
|
64
|
-
srv.wait(400)
|
65
|
-
else
|
66
|
-
srv.wait_term(400)
|
67
|
-
end
|
68
|
-
|
69
|
-
exit(exrc)
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
#
|
3
|
+
# Author: Martin Corino
|
4
|
+
#
|
5
|
+
# This program is free software; you can redistribute it and/or
|
6
|
+
# modify it under the terms of the R2CORBA LICENSE which is
|
7
|
+
# included with this program.
|
8
|
+
#
|
9
|
+
# Copyright (c) Remedy IT Expertise BV
|
10
|
+
# Chamber of commerce Rotterdam nr.276339, The Netherlands
|
11
|
+
#--------------------------------------------------------------------
|
12
|
+
|
13
|
+
OPTIONS = {
|
14
|
+
:debug_opt => '',
|
15
|
+
:use_implement => '--use-implement'
|
16
|
+
}
|
17
|
+
|
18
|
+
require 'optparse'
|
19
|
+
|
20
|
+
ARGV.options do |opts|
|
21
|
+
script_name = File.basename($0)
|
22
|
+
opts.banner = "Usage: ruby #{script_name} [options]"
|
23
|
+
|
24
|
+
opts.separator ""
|
25
|
+
|
26
|
+
opts.on("-d",
|
27
|
+
"Run with debugging output.",
|
28
|
+
"Default: false") { OPTIONS[:debug_opt] = '--d 10' }
|
29
|
+
opts.on("--use-stubs",
|
30
|
+
"Use stubs generated by RIDL.",
|
31
|
+
"Default: false (uses embedded IDL)") { OPTIONS[:use_implement] = '' }
|
32
|
+
|
33
|
+
opts.separator ""
|
34
|
+
|
35
|
+
opts.on("-h", "--help",
|
36
|
+
"Show this help message.") { puts opts; exit }
|
37
|
+
|
38
|
+
opts.parse!
|
39
|
+
end
|
40
|
+
|
41
|
+
require 'lib/test.rb'
|
42
|
+
include TestUtil
|
43
|
+
|
44
|
+
ior_file = 'server.ior'
|
45
|
+
|
46
|
+
TestUtil.remove_file(ior_file)
|
47
|
+
|
48
|
+
srv = Test.new
|
49
|
+
|
50
|
+
exit(255) if !srv.run('server.rb', "--o #{ior_file} #{OPTIONS[:debug_opt]} #{OPTIONS[:use_implement]}")
|
51
|
+
|
52
|
+
TestUtil.wait_for_file(ior_file, 400)
|
53
|
+
|
54
|
+
clt = Test.new
|
55
|
+
|
56
|
+
if !clt.run('client.rb', "--k file://#{ior_file} #{OPTIONS[:debug_opt]} #{OPTIONS[:use_implement]}")
|
57
|
+
srv.kill(100)
|
58
|
+
exit(255)
|
59
|
+
end
|
60
|
+
|
61
|
+
exrc = clt.wait(400)
|
62
|
+
|
63
|
+
if exrc ==0
|
64
|
+
srv.wait(400)
|
65
|
+
else
|
66
|
+
srv.wait_term(400)
|
67
|
+
end
|
68
|
+
|
69
|
+
exit(exrc)
|
data/test/Exceptions/server.ior
CHANGED
@@ -1 +1 @@
|
|
1
|
-
IOR:
|
1
|
+
IOR:010000001300000049444c3a546573742f48656c6c6f3a312e30000001000000000000006c000000010102000d0000003137322e31362e362e3137380000d2dc1b00000014010f0052535463b2d354309503000000000001000000010000000002000000000000000800000001c7cd01004f4154010000001800000001c7cd010100010001000000010001050901010000000000
|
data/test/Exceptions/server.rb
CHANGED
@@ -1,131 +1,131 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
#
|
3
|
-
# Author: Martin Corino
|
4
|
-
#
|
5
|
-
# This program is free software; you can redistribute it and/or
|
6
|
-
# modify it under the terms of the R2CORBA LICENSE which is
|
7
|
-
# included with this program.
|
8
|
-
#
|
9
|
-
# Copyright (c) Remedy IT Expertise BV
|
10
|
-
# Chamber of commerce Rotterdam nr.276339, The Netherlands
|
11
|
-
#--------------------------------------------------------------------
|
12
|
-
|
13
|
-
require 'optparse'
|
14
|
-
|
15
|
-
OPTIONS = {
|
16
|
-
:use_implement => false,
|
17
|
-
:orb_debuglevel => 0,
|
18
|
-
:iorfile => 'server.ior'
|
19
|
-
}
|
20
|
-
|
21
|
-
ARGV.options do |opts|
|
22
|
-
script_name = File.basename($0)
|
23
|
-
opts.banner = "Usage: ruby #{script_name} [options]"
|
24
|
-
|
25
|
-
opts.separator ""
|
26
|
-
|
27
|
-
opts.on("--o IORFILE",
|
28
|
-
"Set IOR filename.",
|
29
|
-
"Default: 'server.ior'") { |v| OPTIONS[:iorfile]=v }
|
30
|
-
opts.on("--d LVL",
|
31
|
-
"Set ORBDebugLevel value.",
|
32
|
-
"Default: 0") { |v| OPTIONS[:orb_debuglevel]=v }
|
33
|
-
opts.on("--use-implement",
|
34
|
-
"Load IDL through CORBA.implement() instead of precompiled code.",
|
35
|
-
"Default: off") { |v| OPTIONS[:use_implement]=v }
|
36
|
-
|
37
|
-
opts.separator ""
|
38
|
-
|
39
|
-
opts.on("-h", "--help",
|
40
|
-
"Show this help message.") { puts opts; exit }
|
41
|
-
|
42
|
-
opts.parse!
|
43
|
-
end
|
44
|
-
|
45
|
-
if OPTIONS[:use_implement]
|
46
|
-
require 'corba/poa'
|
47
|
-
CORBA.implement('Test.idl', OPTIONS, CORBA::IDL::SERVANT_INTF)
|
48
|
-
else
|
49
|
-
require 'TestS.rb'
|
50
|
-
end
|
51
|
-
|
52
|
-
class MyHello < POA::Test::Hello
|
53
|
-
def initialize(orb)
|
54
|
-
@orb = orb
|
55
|
-
@nex = 0
|
56
|
-
end
|
57
|
-
|
58
|
-
def test_exception()
|
59
|
-
@nex += 1
|
60
|
-
case (@nex % 3)
|
61
|
-
when 1
|
62
|
-
x = Test::ExOne.new
|
63
|
-
x.why = 'Because I want it'
|
64
|
-
x.code = @nex
|
65
|
-
raise x
|
66
|
-
when 2
|
67
|
-
raise Test::ExBoo.new(Test::ExBoo::LOUD)
|
68
|
-
else
|
69
|
-
end
|
70
|
-
end
|
71
|
-
|
72
|
-
def myString
|
73
|
-
raise Test::ExOne.new('Need to set string first.', 1) unless @mystr
|
74
|
-
@mystr
|
75
|
-
end
|
76
|
-
|
77
|
-
def myString=(s)
|
78
|
-
@mystr = s.to_s
|
79
|
-
end
|
80
|
-
|
81
|
-
def myCount
|
82
|
-
@mycnt || 0
|
83
|
-
end
|
84
|
-
|
85
|
-
def myCount=(c)
|
86
|
-
raise Test::ExOne.new('Value out of bounds', 2) unless c.to_i < 100
|
87
|
-
@mycnt = c.to_i
|
88
|
-
end
|
89
|
-
|
90
|
-
def myResult
|
91
|
-
raise Test::ExOne.new('Need to set myCount first.', 1) unless @mycnt
|
92
|
-
@mycnt * 3
|
93
|
-
end
|
94
|
-
|
95
|
-
def shutdown()
|
96
|
-
@orb.shutdown()
|
97
|
-
end
|
98
|
-
end #of servant MyHello
|
99
|
-
|
100
|
-
orb = CORBA.ORB_init(["-ORBDebugLevel", OPTIONS[:orb_debuglevel]], 'myORB')
|
101
|
-
|
102
|
-
obj = orb.resolve_initial_references('RootPOA')
|
103
|
-
|
104
|
-
root_poa = PortableServer::POA._narrow(obj)
|
105
|
-
|
106
|
-
poa_man = root_poa.the_POAManager
|
107
|
-
|
108
|
-
poa_man.activate
|
109
|
-
|
110
|
-
hello_srv = MyHello.new(orb)
|
111
|
-
|
112
|
-
hello_obj = hello_srv._this()
|
113
|
-
|
114
|
-
hello_ior = orb.object_to_string(hello_obj)
|
115
|
-
|
116
|
-
open(OPTIONS[:iorfile], 'w') { |io|
|
117
|
-
io.write hello_ior
|
118
|
-
}
|
119
|
-
|
120
|
-
Signal.trap('INT') do
|
121
|
-
puts "SIGINT - shutting down ORB..."
|
122
|
-
orb.shutdown()
|
123
|
-
end
|
124
|
-
|
125
|
-
if Signal.list.has_key?('USR2')
|
126
|
-
Signal.trap('USR2', 'EXIT')
|
127
|
-
end
|
128
|
-
|
129
|
-
orb.run
|
130
|
-
|
131
|
-
exit 0
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
#
|
3
|
+
# Author: Martin Corino
|
4
|
+
#
|
5
|
+
# This program is free software; you can redistribute it and/or
|
6
|
+
# modify it under the terms of the R2CORBA LICENSE which is
|
7
|
+
# included with this program.
|
8
|
+
#
|
9
|
+
# Copyright (c) Remedy IT Expertise BV
|
10
|
+
# Chamber of commerce Rotterdam nr.276339, The Netherlands
|
11
|
+
#--------------------------------------------------------------------
|
12
|
+
|
13
|
+
require 'optparse'
|
14
|
+
|
15
|
+
OPTIONS = {
|
16
|
+
:use_implement => false,
|
17
|
+
:orb_debuglevel => 0,
|
18
|
+
:iorfile => 'server.ior'
|
19
|
+
}
|
20
|
+
|
21
|
+
ARGV.options do |opts|
|
22
|
+
script_name = File.basename($0)
|
23
|
+
opts.banner = "Usage: ruby #{script_name} [options]"
|
24
|
+
|
25
|
+
opts.separator ""
|
26
|
+
|
27
|
+
opts.on("--o IORFILE",
|
28
|
+
"Set IOR filename.",
|
29
|
+
"Default: 'server.ior'") { |v| OPTIONS[:iorfile]=v }
|
30
|
+
opts.on("--d LVL",
|
31
|
+
"Set ORBDebugLevel value.",
|
32
|
+
"Default: 0") { |v| OPTIONS[:orb_debuglevel]=v }
|
33
|
+
opts.on("--use-implement",
|
34
|
+
"Load IDL through CORBA.implement() instead of precompiled code.",
|
35
|
+
"Default: off") { |v| OPTIONS[:use_implement]=v }
|
36
|
+
|
37
|
+
opts.separator ""
|
38
|
+
|
39
|
+
opts.on("-h", "--help",
|
40
|
+
"Show this help message.") { puts opts; exit }
|
41
|
+
|
42
|
+
opts.parse!
|
43
|
+
end
|
44
|
+
|
45
|
+
if OPTIONS[:use_implement]
|
46
|
+
require 'corba/poa'
|
47
|
+
CORBA.implement('Test.idl', OPTIONS, CORBA::IDL::SERVANT_INTF)
|
48
|
+
else
|
49
|
+
require 'TestS.rb'
|
50
|
+
end
|
51
|
+
|
52
|
+
class MyHello < POA::Test::Hello
|
53
|
+
def initialize(orb)
|
54
|
+
@orb = orb
|
55
|
+
@nex = 0
|
56
|
+
end
|
57
|
+
|
58
|
+
def test_exception()
|
59
|
+
@nex += 1
|
60
|
+
case (@nex % 3)
|
61
|
+
when 1
|
62
|
+
x = Test::ExOne.new
|
63
|
+
x.why = 'Because I want it'
|
64
|
+
x.code = @nex
|
65
|
+
raise x
|
66
|
+
when 2
|
67
|
+
raise Test::ExBoo.new(Test::ExBoo::LOUD)
|
68
|
+
else
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
def myString
|
73
|
+
raise Test::ExOne.new('Need to set string first.', 1) unless @mystr
|
74
|
+
@mystr
|
75
|
+
end
|
76
|
+
|
77
|
+
def myString=(s)
|
78
|
+
@mystr = s.to_s
|
79
|
+
end
|
80
|
+
|
81
|
+
def myCount
|
82
|
+
@mycnt || 0
|
83
|
+
end
|
84
|
+
|
85
|
+
def myCount=(c)
|
86
|
+
raise Test::ExOne.new('Value out of bounds', 2) unless c.to_i < 100
|
87
|
+
@mycnt = c.to_i
|
88
|
+
end
|
89
|
+
|
90
|
+
def myResult
|
91
|
+
raise Test::ExOne.new('Need to set myCount first.', 1) unless @mycnt
|
92
|
+
@mycnt * 3
|
93
|
+
end
|
94
|
+
|
95
|
+
def shutdown()
|
96
|
+
@orb.shutdown()
|
97
|
+
end
|
98
|
+
end #of servant MyHello
|
99
|
+
|
100
|
+
orb = CORBA.ORB_init(["-ORBDebugLevel", OPTIONS[:orb_debuglevel]], 'myORB')
|
101
|
+
|
102
|
+
obj = orb.resolve_initial_references('RootPOA')
|
103
|
+
|
104
|
+
root_poa = PortableServer::POA._narrow(obj)
|
105
|
+
|
106
|
+
poa_man = root_poa.the_POAManager
|
107
|
+
|
108
|
+
poa_man.activate
|
109
|
+
|
110
|
+
hello_srv = MyHello.new(orb)
|
111
|
+
|
112
|
+
hello_obj = hello_srv._this()
|
113
|
+
|
114
|
+
hello_ior = orb.object_to_string(hello_obj)
|
115
|
+
|
116
|
+
open(OPTIONS[:iorfile], 'w') { |io|
|
117
|
+
io.write hello_ior
|
118
|
+
}
|
119
|
+
|
120
|
+
Signal.trap('INT') do
|
121
|
+
puts "SIGINT - shutting down ORB..."
|
122
|
+
orb.shutdown()
|
123
|
+
end
|
124
|
+
|
125
|
+
if Signal.list.has_key?('USR2')
|
126
|
+
Signal.trap('USR2', 'EXIT')
|
127
|
+
end
|
128
|
+
|
129
|
+
orb.run
|
130
|
+
|
131
|
+
exit 0
|