teo-soap4r 1.5.9b

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.
Files changed (425) hide show
  1. data/bin/wsdl2ruby.rb +137 -0
  2. data/bin/xsd2ruby.rb +90 -0
  3. data/lib/soap/attachment.rb +108 -0
  4. data/lib/soap/attrproxy.rb +34 -0
  5. data/lib/soap/baseData.rb +1094 -0
  6. data/lib/soap/element.rb +277 -0
  7. data/lib/soap/encodingstyle/aspDotNetHandler.rb +207 -0
  8. data/lib/soap/encodingstyle/handler.rb +120 -0
  9. data/lib/soap/encodingstyle/literalHandler.rb +195 -0
  10. data/lib/soap/encodingstyle/soapHandler.rb +559 -0
  11. data/lib/soap/filter.rb +13 -0
  12. data/lib/soap/filter/filterchain.rb +51 -0
  13. data/lib/soap/filter/handler.rb +31 -0
  14. data/lib/soap/filter/streamhandler.rb +29 -0
  15. data/lib/soap/generator.rb +299 -0
  16. data/lib/soap/header/handler.rb +61 -0
  17. data/lib/soap/header/handlerset.rb +70 -0
  18. data/lib/soap/header/mappinghandler.rb +47 -0
  19. data/lib/soap/header/simplehandler.rb +44 -0
  20. data/lib/soap/httpconfigloader.rb +139 -0
  21. data/lib/soap/mapping.rb +12 -0
  22. data/lib/soap/mapping/encodedregistry.rb +537 -0
  23. data/lib/soap/mapping/factory.rb +388 -0
  24. data/lib/soap/mapping/literalregistry.rb +391 -0
  25. data/lib/soap/mapping/mapping.rb +576 -0
  26. data/lib/soap/mapping/registry.rb +295 -0
  27. data/lib/soap/mapping/rubytypeFactory.rb +445 -0
  28. data/lib/soap/mapping/schemadefinition.rb +170 -0
  29. data/lib/soap/mapping/typeMap.rb +106 -0
  30. data/lib/soap/mapping/wsdlencodedregistry.rb +211 -0
  31. data/lib/soap/mapping/wsdlliteralregistry.rb +248 -0
  32. data/lib/soap/marshal.rb +59 -0
  33. data/lib/soap/mimemessage.rb +241 -0
  34. data/lib/soap/nestedexception.rb +42 -0
  35. data/lib/soap/netHttpClient.rb +241 -0
  36. data/lib/soap/ns.rb +34 -0
  37. data/lib/soap/parser.rb +252 -0
  38. data/lib/soap/processor.rb +66 -0
  39. data/lib/soap/property.rb +333 -0
  40. data/lib/soap/proxy.rb +14 -0
  41. data/lib/soap/rpc/cgistub.rb +247 -0
  42. data/lib/soap/rpc/driver.rb +221 -0
  43. data/lib/soap/rpc/element.rb +374 -0
  44. data/lib/soap/rpc/httpserver.rb +142 -0
  45. data/lib/soap/rpc/methodDef.rb +68 -0
  46. data/lib/soap/rpc/proxy.rb +572 -0
  47. data/lib/soap/rpc/router.rb +662 -0
  48. data/lib/soap/rpc/rpc.rb +25 -0
  49. data/lib/soap/rpc/soaplet.rb +200 -0
  50. data/lib/soap/rpc/standaloneServer.rb +43 -0
  51. data/lib/soap/soap.rb +151 -0
  52. data/lib/soap/streamHandler.rb +301 -0
  53. data/lib/soap/wsdlDriver.rb +164 -0
  54. data/lib/wsdl/binding.rb +65 -0
  55. data/lib/wsdl/data.rb +64 -0
  56. data/lib/wsdl/definitions.rb +236 -0
  57. data/lib/wsdl/documentation.rb +32 -0
  58. data/lib/wsdl/import.rb +80 -0
  59. data/lib/wsdl/importer.rb +38 -0
  60. data/lib/wsdl/info.rb +50 -0
  61. data/lib/wsdl/message.rb +54 -0
  62. data/lib/wsdl/operation.rb +151 -0
  63. data/lib/wsdl/operationBinding.rb +240 -0
  64. data/lib/wsdl/param.rb +93 -0
  65. data/lib/wsdl/parser.rb +164 -0
  66. data/lib/wsdl/part.rb +52 -0
  67. data/lib/wsdl/port.rb +66 -0
  68. data/lib/wsdl/portType.rb +75 -0
  69. data/lib/wsdl/service.rb +61 -0
  70. data/lib/wsdl/soap/address.rb +40 -0
  71. data/lib/wsdl/soap/binding.rb +49 -0
  72. data/lib/wsdl/soap/body.rb +58 -0
  73. data/lib/wsdl/soap/cgiStubCreator.rb +92 -0
  74. data/lib/wsdl/soap/classDefCreator.rb +433 -0
  75. data/lib/wsdl/soap/classDefCreatorSupport.rb +240 -0
  76. data/lib/wsdl/soap/classNameCreator.rb +54 -0
  77. data/lib/wsdl/soap/clientSkeltonCreator.rb +104 -0
  78. data/lib/wsdl/soap/complexType.rb +173 -0
  79. data/lib/wsdl/soap/data.rb +42 -0
  80. data/lib/wsdl/soap/definitions.rb +200 -0
  81. data/lib/wsdl/soap/driverCreator.rb +118 -0
  82. data/lib/wsdl/soap/element.rb +33 -0
  83. data/lib/wsdl/soap/encodedMappingRegistryCreator.rb +73 -0
  84. data/lib/wsdl/soap/fault.rb +56 -0
  85. data/lib/wsdl/soap/header.rb +86 -0
  86. data/lib/wsdl/soap/headerfault.rb +56 -0
  87. data/lib/wsdl/soap/literalMappingRegistryCreator.rb +115 -0
  88. data/lib/wsdl/soap/mappingRegistryCreator.rb +58 -0
  89. data/lib/wsdl/soap/mappingRegistryCreatorSupport.rb +376 -0
  90. data/lib/wsdl/soap/methodDefCreator.rb +199 -0
  91. data/lib/wsdl/soap/operation.rb +112 -0
  92. data/lib/wsdl/soap/servantSkeltonCreator.rb +89 -0
  93. data/lib/wsdl/soap/servletStubCreator.rb +104 -0
  94. data/lib/wsdl/soap/standaloneServerStubCreator.rb +100 -0
  95. data/lib/wsdl/soap/wsdl2ruby.rb +217 -0
  96. data/lib/wsdl/types.rb +44 -0
  97. data/lib/wsdl/wsdl.rb +24 -0
  98. data/lib/wsdl/xmlSchema/all.rb +24 -0
  99. data/lib/wsdl/xmlSchema/annotation.rb +34 -0
  100. data/lib/wsdl/xmlSchema/any.rb +61 -0
  101. data/lib/wsdl/xmlSchema/anyAttribute.rb +48 -0
  102. data/lib/wsdl/xmlSchema/attribute.rb +104 -0
  103. data/lib/wsdl/xmlSchema/attributeGroup.rb +68 -0
  104. data/lib/wsdl/xmlSchema/choice.rb +58 -0
  105. data/lib/wsdl/xmlSchema/complexContent.rb +97 -0
  106. data/lib/wsdl/xmlSchema/complexExtension.rb +119 -0
  107. data/lib/wsdl/xmlSchema/complexRestriction.rb +104 -0
  108. data/lib/wsdl/xmlSchema/complexType.rb +193 -0
  109. data/lib/wsdl/xmlSchema/content.rb +95 -0
  110. data/lib/wsdl/xmlSchema/data.rb +116 -0
  111. data/lib/wsdl/xmlSchema/element.rb +153 -0
  112. data/lib/wsdl/xmlSchema/enumeration.rb +36 -0
  113. data/lib/wsdl/xmlSchema/fractiondigits.rb +37 -0
  114. data/lib/wsdl/xmlSchema/group.rb +100 -0
  115. data/lib/wsdl/xmlSchema/import.rb +53 -0
  116. data/lib/wsdl/xmlSchema/importHandler.rb +45 -0
  117. data/lib/wsdl/xmlSchema/importer.rb +102 -0
  118. data/lib/wsdl/xmlSchema/include.rb +48 -0
  119. data/lib/wsdl/xmlSchema/length.rb +37 -0
  120. data/lib/wsdl/xmlSchema/list.rb +48 -0
  121. data/lib/wsdl/xmlSchema/maxexclusive.rb +37 -0
  122. data/lib/wsdl/xmlSchema/maxinclusive.rb +37 -0
  123. data/lib/wsdl/xmlSchema/maxlength.rb +37 -0
  124. data/lib/wsdl/xmlSchema/minexclusive.rb +37 -0
  125. data/lib/wsdl/xmlSchema/mininclusive.rb +37 -0
  126. data/lib/wsdl/xmlSchema/minlength.rb +37 -0
  127. data/lib/wsdl/xmlSchema/parser.rb +167 -0
  128. data/lib/wsdl/xmlSchema/pattern.rb +36 -0
  129. data/lib/wsdl/xmlSchema/ref.rb +33 -0
  130. data/lib/wsdl/xmlSchema/schema.rb +178 -0
  131. data/lib/wsdl/xmlSchema/sequence.rb +54 -0
  132. data/lib/wsdl/xmlSchema/simpleContent.rb +69 -0
  133. data/lib/wsdl/xmlSchema/simpleExtension.rb +62 -0
  134. data/lib/wsdl/xmlSchema/simpleRestriction.rb +132 -0
  135. data/lib/wsdl/xmlSchema/simpleType.rb +87 -0
  136. data/lib/wsdl/xmlSchema/totaldigits.rb +37 -0
  137. data/lib/wsdl/xmlSchema/union.rb +35 -0
  138. data/lib/wsdl/xmlSchema/unique.rb +34 -0
  139. data/lib/wsdl/xmlSchema/whitespace.rb +37 -0
  140. data/lib/wsdl/xmlSchema/xsd2ruby.rb +174 -0
  141. data/lib/xsd/charset.rb +189 -0
  142. data/lib/xsd/codegen.rb +12 -0
  143. data/lib/xsd/codegen/classdef.rb +208 -0
  144. data/lib/xsd/codegen/commentdef.rb +34 -0
  145. data/lib/xsd/codegen/gensupport.rb +273 -0
  146. data/lib/xsd/codegen/methoddef.rb +70 -0
  147. data/lib/xsd/codegen/moduledef.rb +208 -0
  148. data/lib/xsd/datatypes.rb +1466 -0
  149. data/lib/xsd/datatypes1999.rb +20 -0
  150. data/lib/xsd/iconvcharset.rb +33 -0
  151. data/lib/xsd/mapping.rb +68 -0
  152. data/lib/xsd/namedelements.rb +132 -0
  153. data/lib/xsd/ns.rb +182 -0
  154. data/lib/xsd/qname.rb +79 -0
  155. data/lib/xsd/xmlparser.rb +76 -0
  156. data/lib/xsd/xmlparser/libxmlparser.rb +115 -0
  157. data/lib/xsd/xmlparser/parser.rb +100 -0
  158. data/lib/xsd/xmlparser/rexmlparser.rb +58 -0
  159. data/lib/xsd/xmlparser/xmlparser.rb +50 -0
  160. data/lib/xsd/xmlparser/xmlscanner.rb +149 -0
  161. data/test/16runner.rb +68 -0
  162. data/test/interopR2/README.txt +2 -0
  163. data/test/interopR2/SOAPBuildersInterop_R2.wsdl +461 -0
  164. data/test/interopR2/SOAPBuildersInterop_R2GrB.wsdl +19 -0
  165. data/test/interopR2/base.rb +288 -0
  166. data/test/interopR2/client.NetRemoting.rb +17 -0
  167. data/test/interopR2/client.rb +1234 -0
  168. data/test/interopR2/client4S4C.rb +15 -0
  169. data/test/interopR2/client4S4C2.rb +14 -0
  170. data/test/interopR2/clientASP.NET.rb +17 -0
  171. data/test/interopR2/clientApacheAxis.rb +16 -0
  172. data/test/interopR2/clientApacheSOAP.rb +17 -0
  173. data/test/interopR2/clientBEAWebLogic.rb +17 -0
  174. data/test/interopR2/clientBase.rb +1967 -0
  175. data/test/interopR2/clientCapeConnect.rb +18 -0
  176. data/test/interopR2/clientDelphi.rb +19 -0
  177. data/test/interopR2/clientEasySoap.rb +14 -0
  178. data/test/interopR2/clientFrontier.rb +25 -0
  179. data/test/interopR2/clientGLUE.rb +32 -0
  180. data/test/interopR2/clientHP.rb +13 -0
  181. data/test/interopR2/clientJAX-RPC.rb +19 -0
  182. data/test/interopR2/clientJSOAP.rb +14 -0
  183. data/test/interopR2/clientKafkaXSLT.rb +15 -0
  184. data/test/interopR2/clientMSSOAPToolkit2.0.rb +17 -0
  185. data/test/interopR2/clientMSSOAPToolkit3.0.rb +17 -0
  186. data/test/interopR2/clientNuSOAP.rb +19 -0
  187. data/test/interopR2/clientNuWave.rb +15 -0
  188. data/test/interopR2/clientOpenLink.rb +15 -0
  189. data/test/interopR2/clientOracle.rb +15 -0
  190. data/test/interopR2/clientPEAR.rb +18 -0
  191. data/test/interopR2/clientPhalanx.rb +18 -0
  192. data/test/interopR2/clientSIMACE.rb +18 -0
  193. data/test/interopR2/clientSOAP4R.rb +18 -0
  194. data/test/interopR2/clientSOAP__Lite.rb +14 -0
  195. data/test/interopR2/clientSQLData.rb +18 -0
  196. data/test/interopR2/clientSilverStream.rb +17 -0
  197. data/test/interopR2/clientSpray2001.rb +17 -0
  198. data/test/interopR2/clientSun.rb +19 -0
  199. data/test/interopR2/clientVWOpentalkSoap.rb +19 -0
  200. data/test/interopR2/clientWASP.rb +19 -0
  201. data/test/interopR2/clientWASPC.rb +18 -0
  202. data/test/interopR2/clientWebMethods.rb +15 -0
  203. data/test/interopR2/clientWhiteMesa.rb +28 -0
  204. data/test/interopR2/clientWingfoot.rb +15 -0
  205. data/test/interopR2/clientXMLBus.rb +19 -0
  206. data/test/interopR2/clientXMLRPC-EPI.rb +17 -0
  207. data/test/interopR2/clientXSOAP.rb +14 -0
  208. data/test/interopR2/clientZSI.rb +19 -0
  209. data/test/interopR2/clienteSOAP.rb +18 -0
  210. data/test/interopR2/clientgSOAP.rb +18 -0
  211. data/test/interopR2/clientkSOAP.rb +17 -0
  212. data/test/interopR2/iSimonReg.rb +112 -0
  213. data/test/interopR2/interopResultBase.rb +114 -0
  214. data/test/interopR2/interopService.rb +247 -0
  215. data/test/interopR2/rwikiInteropService.rb +105 -0
  216. data/test/interopR2/server.cgi +270 -0
  217. data/test/interopR2/server.rb +275 -0
  218. data/test/interopR2/simonReg.rb +123 -0
  219. data/test/interopR2/test.sh +49 -0
  220. data/test/interopR4/client.rb +112 -0
  221. data/test/runner.rb +7 -0
  222. data/test/sm11/classDef.rb +156 -0
  223. data/test/sm11/client.rb +542 -0
  224. data/test/sm11/driver.rb +183 -0
  225. data/test/sm11/servant.rb +1067 -0
  226. data/test/sm11/server.rb +25 -0
  227. data/test/soap/asp.net/hello.wsdl +96 -0
  228. data/test/soap/asp.net/test_aspdotnet.rb +123 -0
  229. data/test/soap/auth/htdigest +2 -0
  230. data/test/soap/auth/htpasswd +2 -0
  231. data/test/soap/auth/test_basic.rb +117 -0
  232. data/test/soap/auth/test_digest.rb +118 -0
  233. data/test/soap/calc/calc.rb +17 -0
  234. data/test/soap/calc/calc2.rb +29 -0
  235. data/test/soap/calc/server.cgi +13 -0
  236. data/test/soap/calc/server.rb +17 -0
  237. data/test/soap/calc/server2.rb +20 -0
  238. data/test/soap/calc/test_calc.rb +51 -0
  239. data/test/soap/calc/test_calc2.rb +55 -0
  240. data/test/soap/calc/test_calc_cgi.rb +71 -0
  241. data/test/soap/case/test_mapping.rb +57 -0
  242. data/test/soap/fault/test_customfault.rb +60 -0
  243. data/test/soap/fault/test_fault.rb +46 -0
  244. data/test/soap/fault/test_soaparray.rb +35 -0
  245. data/test/soap/filter/test_filter.rb +146 -0
  246. data/test/soap/header/server.cgi +119 -0
  247. data/test/soap/header/test_authheader.rb +240 -0
  248. data/test/soap/header/test_authheader_cgi.rb +121 -0
  249. data/test/soap/header/test_simplehandler.rb +116 -0
  250. data/test/soap/helloworld/hw_s.rb +16 -0
  251. data/test/soap/helloworld/test_helloworld.rb +43 -0
  252. data/test/soap/htpasswd +2 -0
  253. data/test/soap/literalArrayMapping/amazonEc.rb +4778 -0
  254. data/test/soap/literalArrayMapping/amazonEcDriver.rb +172 -0
  255. data/test/soap/literalArrayMapping/amazonresponse.xml +100 -0
  256. data/test/soap/literalArrayMapping/test_definedarray.rb +34 -0
  257. data/test/soap/marshal/marshaltestlib.rb +494 -0
  258. data/test/soap/marshal/test_digraph.rb +56 -0
  259. data/test/soap/marshal/test_marshal.rb +26 -0
  260. data/test/soap/marshal/test_struct.rb +47 -0
  261. data/test/soap/ssl/README +1 -0
  262. data/test/soap/ssl/ca.cert +23 -0
  263. data/test/soap/ssl/client.cert +19 -0
  264. data/test/soap/ssl/client.key +15 -0
  265. data/test/soap/ssl/server.cert +19 -0
  266. data/test/soap/ssl/server.key +15 -0
  267. data/test/soap/ssl/sslsvr.rb +57 -0
  268. data/test/soap/ssl/subca.cert +21 -0
  269. data/test/soap/ssl/test_ssl.rb +235 -0
  270. data/test/soap/struct/test_struct.rb +70 -0
  271. data/test/soap/styleuse/client.rb +20 -0
  272. data/test/soap/styleuse/server.rb +86 -0
  273. data/test/soap/swa/test_file.rb +75 -0
  274. data/test/soap/test_basetype.rb +1090 -0
  275. data/test/soap/test_cookie.rb +112 -0
  276. data/test/soap/test_custom_ns.rb +105 -0
  277. data/test/soap/test_custommap.rb +110 -0
  278. data/test/soap/test_empty.rb +105 -0
  279. data/test/soap/test_envelopenamespace.rb +85 -0
  280. data/test/soap/test_extraattr.rb +54 -0
  281. data/test/soap/test_generator.rb +27 -0
  282. data/test/soap/test_httpconfigloader.rb +71 -0
  283. data/test/soap/test_mapping.rb +131 -0
  284. data/test/soap/test_nestedexception.rb +56 -0
  285. data/test/soap/test_nil.rb +57 -0
  286. data/test/soap/test_no_indent.rb +88 -0
  287. data/test/soap/test_property.rb +427 -0
  288. data/test/soap/test_response_as_xml.rb +117 -0
  289. data/test/soap/test_soapelement.rb +138 -0
  290. data/test/soap/test_streamhandler.rb +270 -0
  291. data/test/soap/test_styleuse.rb +326 -0
  292. data/test/soap/wsdlDriver/README.txt +2 -0
  293. data/test/soap/wsdlDriver/calc.wsdl +126 -0
  294. data/test/soap/wsdlDriver/document.wsdl +54 -0
  295. data/test/soap/wsdlDriver/echo_version.rb +29 -0
  296. data/test/soap/wsdlDriver/simpletype.wsdl +63 -0
  297. data/test/soap/wsdlDriver/test_calc.rb +71 -0
  298. data/test/soap/wsdlDriver/test_document.rb +71 -0
  299. data/test/soap/wsdlDriver/test_simpletype.rb +80 -0
  300. data/test/testutil.rb +54 -0
  301. data/test/wsdl/abstract/abstract.wsdl +176 -0
  302. data/test/wsdl/abstract/test_abstract.rb +159 -0
  303. data/test/wsdl/anonymous/expectedClassDef.rb +128 -0
  304. data/test/wsdl/anonymous/expectedDriver.rb +59 -0
  305. data/test/wsdl/anonymous/expectedMappingRegistry.rb +176 -0
  306. data/test/wsdl/anonymous/lp.wsdl +147 -0
  307. data/test/wsdl/anonymous/test_anonymous.rb +130 -0
  308. data/test/wsdl/any/any.wsdl +114 -0
  309. data/test/wsdl/any/expectedDriver.rb +68 -0
  310. data/test/wsdl/any/expectedEcho.rb +57 -0
  311. data/test/wsdl/any/expectedMappingRegistry.rb +63 -0
  312. data/test/wsdl/any/expectedService.rb +69 -0
  313. data/test/wsdl/any/test_any.rb +193 -0
  314. data/test/wsdl/axisArray/axisArray.wsdl +87 -0
  315. data/test/wsdl/axisArray/test_axisarray.rb +124 -0
  316. data/test/wsdl/choice/choice.wsdl +167 -0
  317. data/test/wsdl/choice/test_choice.rb +310 -0
  318. data/test/wsdl/complexcontent/complexContent.wsdl +83 -0
  319. data/test/wsdl/complexcontent/test_echo.rb +90 -0
  320. data/test/wsdl/datetime/DatetimeService.rb +44 -0
  321. data/test/wsdl/datetime/datetime.rb +0 -0
  322. data/test/wsdl/datetime/datetime.wsdl +45 -0
  323. data/test/wsdl/datetime/datetimeServant.rb +22 -0
  324. data/test/wsdl/datetime/test_datetime.rb +86 -0
  325. data/test/wsdl/document/array/double.wsdl +161 -0
  326. data/test/wsdl/document/array/test_array.rb +201 -0
  327. data/test/wsdl/document/document.wsdl +76 -0
  328. data/test/wsdl/document/number.wsdl +54 -0
  329. data/test/wsdl/document/ping_nosoapaction.wsdl +66 -0
  330. data/test/wsdl/document/test_nosoapaction.rb +102 -0
  331. data/test/wsdl/document/test_number.rb +92 -0
  332. data/test/wsdl/document/test_rpc.rb +355 -0
  333. data/test/wsdl/emptycomplextype.wsdl +31 -0
  334. data/test/wsdl/fault/fault.wsdl +79 -0
  335. data/test/wsdl/fault/multifault.wsdl +96 -0
  336. data/test/wsdl/fault/test_fault.rb +119 -0
  337. data/test/wsdl/fault/test_multifault.rb +134 -0
  338. data/test/wsdl/group/expectedClassdef.rb +58 -0
  339. data/test/wsdl/group/expectedDriver.rb +51 -0
  340. data/test/wsdl/group/expectedMappingRegistry.rb +67 -0
  341. data/test/wsdl/group/group.wsdl +88 -0
  342. data/test/wsdl/group/test_rpc.rb +145 -0
  343. data/test/wsdl/list/list.wsdl +93 -0
  344. data/test/wsdl/list/test_list.rb +124 -0
  345. data/test/wsdl/map/map.wsdl +92 -0
  346. data/test/wsdl/map/map.xml +43 -0
  347. data/test/wsdl/map/test_map.rb +99 -0
  348. data/test/wsdl/marshal/person.wsdl +21 -0
  349. data/test/wsdl/marshal/person_org.rb +23 -0
  350. data/test/wsdl/marshal/test_wsdlmarshal.rb +76 -0
  351. data/test/wsdl/multiplefault.wsdl +75 -0
  352. data/test/wsdl/oneway/oneway.wsdl +36 -0
  353. data/test/wsdl/oneway/test_oneway.rb +108 -0
  354. data/test/wsdl/overload/expectedClient.rb +37 -0
  355. data/test/wsdl/overload/expectedDriver.rb +61 -0
  356. data/test/wsdl/overload/expectedServant.rb +35 -0
  357. data/test/wsdl/overload/overload.wsdl +70 -0
  358. data/test/wsdl/overload/test_overload.rb +131 -0
  359. data/test/wsdl/qualified/lp.wsdl +47 -0
  360. data/test/wsdl/qualified/lp.xsd +26 -0
  361. data/test/wsdl/qualified/np.wsdl +51 -0
  362. data/test/wsdl/qualified/test_qualified.rb +137 -0
  363. data/test/wsdl/qualified/test_unqualified.rb +138 -0
  364. data/test/wsdl/raa/RAAService.rb +125 -0
  365. data/test/wsdl/raa/README.txt +8 -0
  366. data/test/wsdl/raa/expectedClassDef.rb +100 -0
  367. data/test/wsdl/raa/expectedDriver.rb +96 -0
  368. data/test/wsdl/raa/expectedMappingRegistry.rb +121 -0
  369. data/test/wsdl/raa/raa.wsdl +264 -0
  370. data/test/wsdl/raa/test_raa.rb +126 -0
  371. data/test/wsdl/ref/expectedDriver.rb +51 -0
  372. data/test/wsdl/ref/expectedProduct.rb +243 -0
  373. data/test/wsdl/ref/product.wsdl +147 -0
  374. data/test/wsdl/ref/test_ref.rb +268 -0
  375. data/test/wsdl/rpc/rpc.wsdl +109 -0
  376. data/test/wsdl/rpc/test-rpc-lit.wsdl +371 -0
  377. data/test/wsdl/rpc/test_rpc.rb +176 -0
  378. data/test/wsdl/rpc/test_rpc_lit.rb +470 -0
  379. data/test/wsdl/simplecontent/simplecontent.wsdl +84 -0
  380. data/test/wsdl/simplecontent/test_simplecontent.rb +102 -0
  381. data/test/wsdl/simpletype/rpc/expectedClient.rb +34 -0
  382. data/test/wsdl/simpletype/rpc/expectedDriver.rb +58 -0
  383. data/test/wsdl/simpletype/rpc/expectedEchoVersion.rb +36 -0
  384. data/test/wsdl/simpletype/rpc/expectedMappingRegistry.rb +57 -0
  385. data/test/wsdl/simpletype/rpc/expectedServant.rb +32 -0
  386. data/test/wsdl/simpletype/rpc/expectedService.rb +55 -0
  387. data/test/wsdl/simpletype/rpc/rpc.wsdl +98 -0
  388. data/test/wsdl/simpletype/rpc/test_rpc.rb +52 -0
  389. data/test/wsdl/simpletype/simpletype.wsdl +114 -0
  390. data/test/wsdl/simpletype/test_simpletype.rb +92 -0
  391. data/test/wsdl/soap/soapbodyparts.wsdl +103 -0
  392. data/test/wsdl/soap/test_soapbodyparts.rb +79 -0
  393. data/test/wsdl/soap/wsdl2ruby/expectedClassdef.rb +21 -0
  394. data/test/wsdl/soap/wsdl2ruby/expectedClient.rb +34 -0
  395. data/test/wsdl/soap/wsdl2ruby/expectedDriver.rb +58 -0
  396. data/test/wsdl/soap/wsdl2ruby/expectedMappingRegistry.rb +36 -0
  397. data/test/wsdl/soap/wsdl2ruby/expectedServant.rb +32 -0
  398. data/test/wsdl/soap/wsdl2ruby/expectedService.cgi +48 -0
  399. data/test/wsdl/soap/wsdl2ruby/expectedService.rb +55 -0
  400. data/test/wsdl/soap/wsdl2ruby/rpc.wsdl +80 -0
  401. data/test/wsdl/soap/wsdl2ruby/section/expectedClassdef.rb +37 -0
  402. data/test/wsdl/soap/wsdl2ruby/section/section.xsd +31 -0
  403. data/test/wsdl/soap/wsdl2ruby/section/test_section.rb +53 -0
  404. data/test/wsdl/soap/wsdl2ruby/soapenc/soapenc.wsdl +64 -0
  405. data/test/wsdl/soap/wsdl2ruby/soapenc/test_soapenc.rb +83 -0
  406. data/test/wsdl/soap/wsdl2ruby/test_wsdl2ruby.rb +102 -0
  407. data/test/wsdl/soaptype/soaptype.wsdl +61 -0
  408. data/test/wsdl/soaptype/test_soaptype.rb +178 -0
  409. data/test/wsdl/test_emptycomplextype.rb +21 -0
  410. data/test/wsdl/test_fault.rb +50 -0
  411. data/test/wsdl/test_multiplefault.rb +41 -0
  412. data/test/xsd/codegen/test_classdef.rb +244 -0
  413. data/test/xsd/noencoding.xml +4 -0
  414. data/test/xsd/test_noencoding.rb +32 -0
  415. data/test/xsd/test_ns.rb +41 -0
  416. data/test/xsd/test_xmlschemaparser.rb +22 -0
  417. data/test/xsd/test_xsd.rb +1638 -0
  418. data/test/xsd/xmllang.xml +43 -0
  419. data/test/xsd/xmlschema.xml +12 -0
  420. data/test/xsd/xsd2ruby/expected_mysample.rb +65 -0
  421. data/test/xsd/xsd2ruby/expected_mysample_mapper.rb +11 -0
  422. data/test/xsd/xsd2ruby/expected_mysample_mapping_registry.rb +51 -0
  423. data/test/xsd/xsd2ruby/section.xsd +49 -0
  424. data/test/xsd/xsd2ruby/test_xsd2ruby.rb +90 -0
  425. metadata +487 -0
@@ -0,0 +1,2 @@
1
+ echo_version.rb is generated by wsdl2ruby.rb;
2
+ % wsdl2ruby.rb --wsdl simpletype.wsdl --classdef --force
@@ -0,0 +1,126 @@
1
+ <?xml version='1.0' encoding='UTF-8'?>
2
+ <!--generated by GLUE Standard 4.0.1 on Wed Mar 09 10:20:07 GMT-08:00
3
+ 2005-->
4
+ <wsdl:definitions name='Calculator'
5
+ targetNamespace='http://www.themindelectric.com/wsdl/Calculator/'
6
+ xmlns:tns='http://www.themindelectric.com/wsdl/Calculator/'
7
+ xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'
8
+ xmlns:http='http://schemas.xmlsoap.org/wsdl/http/'
9
+ xmlns:mime='http://schemas.xmlsoap.org/wsdl/mime/'
10
+ xmlns:xsd='http://www.w3.org/2001/XMLSchema'
11
+ xmlns:soapenc='http://schemas.xmlsoap.org/soap/encoding/'
12
+ xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
13
+ xmlns:tme='http://www.themindelectric.com/'>
14
+ <wsdl:message name='add0In'>
15
+ <wsdl:part name='x' type='xsd:float'/>
16
+ <wsdl:part name='y' type='xsd:float'/>
17
+ </wsdl:message>
18
+ <wsdl:message name='add0Out'>
19
+ <wsdl:part name='Result' type='xsd:float'/>
20
+ </wsdl:message>
21
+ <wsdl:message name='divide1In'>
22
+ <wsdl:part name='numerator' type='xsd:float'/>
23
+ <wsdl:part name='denominator' type='xsd:float'/>
24
+ </wsdl:message>
25
+ <wsdl:message name='divide1Out'>
26
+ <wsdl:part name='Result' type='xsd:float'/>
27
+ </wsdl:message>
28
+ <wsdl:message name='multiply2In'>
29
+ <wsdl:part name='x' type='xsd:float'/>
30
+ <wsdl:part name='y' type='xsd:float'/>
31
+ </wsdl:message>
32
+ <wsdl:message name='multiply2Out'>
33
+ <wsdl:part name='Result' type='xsd:float'/>
34
+ </wsdl:message>
35
+ <wsdl:message name='subtract3In'>
36
+ <wsdl:part name='x' type='xsd:float'/>
37
+ <wsdl:part name='y' type='xsd:float'/>
38
+ </wsdl:message>
39
+ <wsdl:message name='subtract3Out'>
40
+ <wsdl:part name='Result' type='xsd:float'/>
41
+ </wsdl:message>
42
+ <wsdl:portType name='ICalculator'>
43
+ <wsdl:operation name='add' parameterOrder='x y'>
44
+ <wsdl:input name='add0In' message='tns:add0In'/>
45
+ <wsdl:output name='add0Out' message='tns:add0Out'/>
46
+ </wsdl:operation>
47
+ <wsdl:operation name='divide' parameterOrder='numerator
48
+ denominator'>
49
+ <wsdl:input name='divide1In' message='tns:divide1In'/>
50
+ <wsdl:output name='divide1Out' message='tns:divide1Out'/>
51
+ </wsdl:operation>
52
+ <wsdl:operation name='multiply' parameterOrder='x y'>
53
+ <wsdl:input name='multiply2In' message='tns:multiply2In'/>
54
+ <wsdl:output name='multiply2Out'
55
+ message='tns:multiply2Out'/>
56
+ </wsdl:operation>
57
+ <wsdl:operation name='subtract' parameterOrder='x y'>
58
+ <wsdl:input name='subtract3In' message='tns:subtract3In'/>
59
+ <wsdl:output name='subtract3Out'
60
+ message='tns:subtract3Out'/>
61
+ </wsdl:operation>
62
+ </wsdl:portType>
63
+ <wsdl:binding name='ICalculator' type='tns:ICalculator'>
64
+ <soap:binding style='rpc'
65
+ transport='http://schemas.xmlsoap.org/soap/http'/>
66
+ <wsdl:operation name='add'>
67
+ <soap:operation soapAction='add' style='rpc'/>
68
+ <wsdl:input name='add0In'>
69
+ <soap:body use='encoded'
70
+ namespace='http://www.fred.com'
71
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
72
+ </wsdl:input>
73
+ <wsdl:output name='add0Out'>
74
+ <soap:body use='encoded'
75
+ namespace='http://www.fred.com'
76
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
77
+ </wsdl:output>
78
+ </wsdl:operation>
79
+ <wsdl:operation name='divide'>
80
+ <soap:operation soapAction='divide' style='rpc'/>
81
+ <wsdl:input name='divide1In'>
82
+ <soap:body use='encoded'
83
+ namespace='http://www.fred.com'
84
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
85
+ </wsdl:input>
86
+ <wsdl:output name='divide1Out'>
87
+ <soap:body use='encoded'
88
+ namespace='http://www.fred.com'
89
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
90
+ </wsdl:output>
91
+ </wsdl:operation>
92
+ <wsdl:operation name='multiply'>
93
+ <soap:operation soapAction='multiply' style='rpc'/>
94
+ <wsdl:input name='multiply2In'>
95
+ <soap:body use='encoded'
96
+ namespace='http://www.fred.com'
97
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
98
+ </wsdl:input>
99
+ <wsdl:output name='multiply2Out'>
100
+ <soap:body use='encoded'
101
+ namespace='http://www.fred.com'
102
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
103
+ </wsdl:output>
104
+ </wsdl:operation>
105
+ <wsdl:operation name='subtract'>
106
+ <soap:operation soapAction='subtract' style='rpc'/>
107
+ <wsdl:input name='subtract3In'>
108
+ <soap:body use='encoded'
109
+ namespace='http://www.fred.com'
110
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
111
+ </wsdl:input>
112
+ <wsdl:output name='subtract3Out'>
113
+ <soap:body use='encoded'
114
+ namespace='http://www.fred.com'
115
+ encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/>
116
+ </wsdl:output>
117
+ </wsdl:operation>
118
+ </wsdl:binding>
119
+ <wsdl:service name='Calculator'>
120
+ <wsdl:documentation>calculator service</wsdl:documentation>
121
+ <wsdl:port name='ICalculator' binding='tns:ICalculator'>
122
+ <soap:address
123
+ location='http://ukulele:8080/calcapp/services/calculator'/>
124
+ </wsdl:port>
125
+ </wsdl:service>
126
+ </wsdl:definitions>
@@ -0,0 +1,54 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <definitions name="submit_service"
3
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
4
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
5
+ xmlns:tns="urn:example.com:document"
6
+ targetNamespace="urn:example.com:document"
7
+ xmlns="http://schemas.xmlsoap.org/wsdl/">
8
+ <types>
9
+ <xsd:schema targetNamespace="urn:example.com:document">
10
+ <xsd:element name="ruby">
11
+ <xsd:complexType>
12
+ <xsd:sequence>
13
+ <xsd:element minOccurs="1" maxOccurs="1" name="myversion" type="tns:myversion"/>
14
+ <xsd:element minOccurs="0" maxOccurs="1" name="date" type="xsd:dateTime"/>
15
+ </xsd:sequence>
16
+ </xsd:complexType>
17
+ </xsd:element>
18
+
19
+ <xsd:simpleType name="myversion">
20
+ <xsd:restriction base="xsd:string">
21
+ <xsd:enumeration value="1.6"/>
22
+ <xsd:enumeration value="1.8"/>
23
+ <xsd:enumeration value="1.9"/>
24
+ </xsd:restriction>
25
+ </xsd:simpleType>
26
+ </xsd:schema>
27
+ </types>
28
+
29
+ <message name="submit_msg">
30
+ <part name="parameters" element="tns:ruby"/>
31
+ </message>
32
+
33
+ <portType name="submit_port_type">
34
+ <operation name="submit">
35
+ <input message="tns:submit_msg"/>
36
+ <output message="tns:submit_msg"/>
37
+ </operation>
38
+ </portType>
39
+
40
+ <binding name="submit_binding" type="tns:submit_port_type">
41
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
42
+ <operation name="submit">
43
+ <soap:operation soapAction="urn:example.com:document#submit" style="document"/>
44
+ <input><soap:body use="literal"/></input>
45
+ <output><soap:body use="literal"/></output>
46
+ </operation>
47
+ </binding>
48
+
49
+ <service name="submit_service">
50
+ <port name="submit_port" binding="tns:submit_binding">
51
+ <soap:address location="http://localhost:10080"/>
52
+ </port>
53
+ </service>
54
+ </definitions>
@@ -0,0 +1,29 @@
1
+ require 'xsd/qname'
2
+
3
+ # {urn:example.com:simpletype-rpc-type}version_struct
4
+ class Version_struct
5
+ @@schema_type = "version_struct"
6
+ @@schema_ns = "urn:example.com:simpletype-rpc-type"
7
+ @@schema_element = [
8
+ ["myversion", ["SOAP::SOAPString", XSD::QName.new(nil, "myversion")]],
9
+ ["msg", ["SOAP::SOAPString", XSD::QName.new(nil, "msg")]]
10
+ ]
11
+
12
+ attr_accessor :myversion
13
+ attr_accessor :msg
14
+
15
+ def initialize(myversion = nil, msg = nil)
16
+ @myversion = myversion
17
+ @msg = msg
18
+ end
19
+ end
20
+
21
+ # {urn:example.com:simpletype-rpc-type}myversions
22
+ class Myversions < ::String
23
+ @@schema_type = "myversions"
24
+ @@schema_ns = "urn:example.com:simpletype-rpc-type"
25
+
26
+ C_16 = Myversions.new("1.6")
27
+ C_18 = Myversions.new("1.8")
28
+ C_19 = Myversions.new("1.9")
29
+ end
@@ -0,0 +1,63 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <definitions name="echo_version"
3
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
4
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
5
+ xmlns:tns="urn:example.com:simpletype-rpc"
6
+ xmlns:txd="urn:example.com:simpletype-rpc-type"
7
+ targetNamespace="urn:example.com:simpletype-rpc"
8
+ xmlns="http://schemas.xmlsoap.org/wsdl/">
9
+ <types>
10
+ <xsd:schema targetNamespace="urn:example.com:simpletype-rpc-type">
11
+ <xsd:complexType name="version_struct">
12
+ <xsd:all>
13
+ <xsd:element name="myversion" type="txd:myversions" />
14
+ <xsd:element name="msg" type="xsd:string" />
15
+ </xsd:all>
16
+ </xsd:complexType>
17
+
18
+ <xsd:simpleType name="myversions">
19
+ <xsd:restriction base="xsd:string">
20
+ <xsd:enumeration value="1.6"/>
21
+ <xsd:enumeration value="1.8"/>
22
+ <xsd:enumeration value="1.9"/>
23
+ </xsd:restriction>
24
+ </xsd:simpleType>
25
+ </xsd:schema>
26
+ </types>
27
+
28
+ <message name="msg_version">
29
+ <part name="myversion" type="txd:myversions"/>
30
+ </message>
31
+
32
+ <message name="msg_version_struct">
33
+ <part name="return" type="txd:version_struct"/>
34
+ </message>
35
+
36
+ <portType name="echo_version_port_type">
37
+ <operation name="echo_version">
38
+ <input message="tns:msg_version"/>
39
+ <output message="tns:msg_version_struct"/>
40
+ </operation>
41
+ </portType>
42
+
43
+ <binding name="echo_version_binding" type="tns:echo_version_port_type">
44
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
45
+ <operation name="echo_version">
46
+ <soap:operation soapAction="urn:example.com:simpletype-rpc"/>
47
+ <input>
48
+ <soap:body use="encoded" namespace="urn:example.com:simpletype-rpc"
49
+ encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
50
+ </input>
51
+ <output>
52
+ <soap:body use="encoded" namespace="urn:example.com:simpletype-rpc"
53
+ encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
54
+ </output>
55
+ </operation>
56
+ </binding>
57
+
58
+ <service name="echo_version_service">
59
+ <port name="echo_version_port" binding="tns:echo_version_binding">
60
+ <soap:address location="http://localhost:10080"/>
61
+ </port>
62
+ </service>
63
+ </definitions>
@@ -0,0 +1,71 @@
1
+ require 'test/unit'
2
+ require 'soap/rpc/httpserver'
3
+ require 'soap/wsdlDriver'
4
+ require File.join(File.dirname(File.expand_path(__FILE__)), '..', '..', 'testutil.rb')
5
+
6
+
7
+ module SOAP
8
+
9
+
10
+ class TestCalc < Test::Unit::TestCase
11
+ class Server < ::SOAP::RPC::HTTPServer
12
+ def on_init
13
+ add_method(self, 'add', 'x', 'y')
14
+ end
15
+
16
+ def add(x, y)
17
+ x.to_f + y.to_f
18
+ end
19
+ end
20
+
21
+ DIR = File.dirname(File.expand_path(__FILE__))
22
+ Port = 17171
23
+
24
+ def setup
25
+ setup_server
26
+ setup_client
27
+ end
28
+
29
+ def setup_server
30
+ @server = Server.new(
31
+ :BindAddress => "0.0.0.0",
32
+ :Port => Port,
33
+ :AccessLog => [],
34
+ :SOAPDefaultNamespace => 'http://www.fred.com'
35
+ )
36
+ @server.level = Logger::Severity::ERROR
37
+ @server_thread = TestUtil.start_server_thread(@server)
38
+ end
39
+
40
+ def setup_client
41
+ @wsdl = File.join(DIR, 'calc.wsdl')
42
+ end
43
+
44
+ def teardown
45
+ teardown_server if @server
46
+ teardown_client if @client
47
+ end
48
+
49
+ def teardown_server
50
+ @server.shutdown
51
+ @server_thread.kill
52
+ @server_thread.join
53
+ end
54
+
55
+ def teardown_client
56
+ @client.reset_stream if @client
57
+ end
58
+
59
+ def test_rpc_driver
60
+ @client = ::SOAP::WSDLDriverFactory.new(@wsdl).create_rpc_driver
61
+ @client.wiredump_dev = STDOUT if $DEBUG
62
+ @client.endpoint_url = "http://localhost:#{Port}/"
63
+ @client.generate_explicit_type = true
64
+ assert_equal(0.3, @client.add(0.1, 0.2))
65
+ @client.generate_explicit_type = false
66
+ assert_equal(0.3, @client.add(0.1, 0.2))
67
+ end
68
+ end
69
+
70
+
71
+ end
@@ -0,0 +1,71 @@
1
+ require 'test/unit'
2
+ require 'soap/rpc/standaloneServer'
3
+ require 'soap/wsdlDriver'
4
+ require File.join(File.dirname(File.expand_path(__FILE__)), '..', '..', 'testutil.rb')
5
+
6
+
7
+ module SOAP
8
+
9
+
10
+ class TestDocument < Test::Unit::TestCase
11
+ Namespace = 'urn:example.com:document'
12
+
13
+ class Server < ::SOAP::RPC::StandaloneServer
14
+ def on_init
15
+ add_document_method(self, 'urn:example.com:document#submit', 'submit', XSD::QName.new(Namespace, 'ruby'), XSD::QName.new(Namespace, 'ruby'))
16
+ end
17
+
18
+ def submit(ruby)
19
+ ruby
20
+ end
21
+ end
22
+
23
+ DIR = File.dirname(File.expand_path(__FILE__))
24
+
25
+ Port = 17171
26
+
27
+ def setup
28
+ setup_server
29
+ setup_client
30
+ end
31
+
32
+ def setup_server
33
+ @server = Server.new('Test', Namespace, '0.0.0.0', Port)
34
+ @server.level = Logger::Severity::ERROR
35
+ @server_thread = TestUtil.start_server_thread(@server)
36
+ end
37
+
38
+ def setup_client
39
+ wsdl = File.join(DIR, 'document.wsdl')
40
+ @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
41
+ @client.endpoint_url = "http://localhost:#{Port}/"
42
+ @client.wiredump_dev = STDOUT if $DEBUG
43
+ end
44
+
45
+ def teardown
46
+ teardown_server if @server
47
+ teardown_client if @client
48
+ end
49
+
50
+ def teardown_server
51
+ @server.shutdown
52
+ @server_thread.kill
53
+ @server_thread.join
54
+ end
55
+
56
+ def teardown_client
57
+ @client.reset_stream
58
+ end
59
+
60
+ def test_document
61
+ msg = {'myversion' => "1.9", 'date' => "2004-01-01T00:00:00Z"}
62
+ reply_msg = @client.submit(msg)
63
+ assert_equal('1.9', reply_msg.myversion)
64
+ assert_equal('1.9', reply_msg['myversion'])
65
+ assert_equal('2004-01-01T00:00:00Z', reply_msg.date)
66
+ assert_equal('2004-01-01T00:00:00Z', reply_msg['date'])
67
+ end
68
+ end
69
+
70
+
71
+ end
@@ -0,0 +1,80 @@
1
+ require 'test/unit'
2
+ require 'soap/rpc/httpserver'
3
+ require 'soap/wsdlDriver'
4
+ require File.join(File.dirname(File.expand_path(__FILE__)), '..', '..', 'testutil.rb')
5
+
6
+
7
+ module SOAP
8
+
9
+
10
+ class TestSimpleType < Test::Unit::TestCase
11
+ class Server < ::SOAP::RPC::HTTPServer
12
+ def on_init
13
+ add_method(self, 'echo_version', 'version')
14
+ end
15
+
16
+ def echo_version(version)
17
+ # "2.0" is out of range.
18
+ Version_struct.new(version || "2.0", 'checked')
19
+ end
20
+ end
21
+
22
+ DIR = File.dirname(File.expand_path(__FILE__))
23
+ require File.join(DIR, 'echo_version')
24
+
25
+ Port = 17171
26
+
27
+ def setup
28
+ setup_server
29
+ setup_client
30
+ end
31
+
32
+ def setup_server
33
+ @server = Server.new(
34
+ :BindAddress => "0.0.0.0",
35
+ :Port => Port,
36
+ :AccessLog => [],
37
+ :SOAPDefaultNamespace => "urn:example.com:simpletype-rpc"
38
+ )
39
+ @server.level = Logger::Severity::ERROR
40
+ @server_thread = TestUtil.start_server_thread(@server)
41
+ end
42
+
43
+ def setup_client
44
+ wsdl = File.join(DIR, 'simpletype.wsdl')
45
+ @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
46
+ @client.wiredump_dev = STDOUT if $DEBUG
47
+ @client.endpoint_url = "http://localhost:#{Port}/"
48
+ @client.generate_explicit_type = false
49
+ end
50
+
51
+ def teardown
52
+ teardown_server if @server
53
+ teardown_client if @client
54
+ end
55
+
56
+ def teardown_server
57
+ @server.shutdown
58
+ @server_thread.kill
59
+ @server_thread.join
60
+ end
61
+
62
+ def teardown_client
63
+ @client.reset_stream
64
+ end
65
+
66
+ def test_ping
67
+ result = @client.echo_version("1.9")
68
+ assert_equal("1.9", result.myversion)
69
+ assert_equal("checked", result.msg)
70
+ assert_raise(XSD::ValueSpaceError) do
71
+ @client.echo_version("2.0")
72
+ end
73
+ assert_raise(XSD::ValueSpaceError) do
74
+ @client.echo_version(nil) # nil => "2.0" => out of range
75
+ end
76
+ end
77
+ end
78
+
79
+
80
+ end