summaryrefslogtreecommitdiff
path: root/ruby_1_8_5/test/wsdl/rpc/test_rpc_lit.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ruby_1_8_5/test/wsdl/rpc/test_rpc_lit.rb')
-rw-r--r--ruby_1_8_5/test/wsdl/rpc/test_rpc_lit.rb399
1 files changed, 0 insertions, 399 deletions
diff --git a/ruby_1_8_5/test/wsdl/rpc/test_rpc_lit.rb b/ruby_1_8_5/test/wsdl/rpc/test_rpc_lit.rb
deleted file mode 100644
index 080dbb82cf..0000000000
--- a/ruby_1_8_5/test/wsdl/rpc/test_rpc_lit.rb
+++ /dev/null
@@ -1,399 +0,0 @@
-require 'test/unit'
-require 'wsdl/soap/wsdl2ruby'
-require 'soap/rpc/standaloneServer'
-require 'soap/wsdlDriver'
-
-if defined?(HTTPAccess2) and defined?(OpenSSL)
-
-module WSDL; module RPC
-
-
-class TestRPCLIT < Test::Unit::TestCase
- class Server < ::SOAP::RPC::StandaloneServer
- Namespace = "http://soapbuilders.org/rpc-lit-test"
-
- def on_init
- self.generate_explicit_type = false
- add_rpc_operation(self,
- XSD::QName.new(Namespace, 'echoStringArray'),
- nil,
- 'echoStringArray', [
- ['in', 'inputStringArray', nil],
- ['retval', 'return', nil]
- ],
- {
- :request_style => :rpc,
- :request_use => :literal,
- :response_style => :rpc,
- :response_use => :literal
- }
- )
- add_rpc_operation(self,
- XSD::QName.new(Namespace, 'echoStringArrayInline'),
- nil,
- 'echoStringArrayInline', [
- ['in', 'inputStringArray', nil],
- ['retval', 'return', nil]
- ],
- {
- :request_style => :rpc,
- :request_use => :literal,
- :response_style => :rpc,
- :response_use => :literal
- }
- )
- add_rpc_operation(self,
- XSD::QName.new(Namespace, 'echoNestedStruct'),
- nil,
- 'echoNestedStruct', [
- ['in', 'inputNestedStruct', nil],
- ['retval', 'return', nil]
- ],
- {
- :request_style => :rpc,
- :request_use => :literal,
- :response_style => :rpc,
- :response_use => :literal
- }
- )
- add_rpc_operation(self,
- XSD::QName.new(Namespace, 'echoStructArray'),
- nil,
- 'echoStructArray', [
- ['in', 'inputStructArray', nil],
- ['retval', 'return', nil]
- ],
- {
- :request_style => :rpc,
- :request_use => :literal,
- :response_style => :rpc,
- :response_use => :literal
- }
- )
- end
-
- def echoStringArray(strings)
- # strings.stringItem => Array
- ArrayOfstring[*strings.stringItem]
- end
-
- def echoStringArrayInline(strings)
- ArrayOfstringInline[*strings.stringItem]
- end
-
- def echoNestedStruct(struct)
- struct
- end
-
- def echoStructArray(ary)
- ary
- end
- end
-
- DIR = File.dirname(File.expand_path(__FILE__))
-
- Port = 17171
-
- def setup
- setup_server
- setup_classdef
- @client = nil
- end
-
- def teardown
- teardown_server
- unless $DEBUG
- File.unlink(pathname('RPC-Literal-TestDefinitions.rb'))
- File.unlink(pathname('RPC-Literal-TestDefinitionsDriver.rb'))
- end
- @client.reset_stream if @client
- end
-
- def setup_server
- @server = Server.new('Test', Server::Namespace, '0.0.0.0', Port)
- @server.level = Logger::Severity::ERROR
- @server_thread = start_server_thread(@server)
- end
-
- def setup_classdef
- gen = WSDL::SOAP::WSDL2Ruby.new
- gen.location = pathname("test-rpc-lit.wsdl")
- gen.basedir = DIR
- gen.logger.level = Logger::FATAL
- gen.opt['classdef'] = nil
- gen.opt['driver'] = nil
- gen.opt['force'] = true
- gen.run
- backupdir = Dir.pwd
- begin
- Dir.chdir(DIR)
- require pathname('RPC-Literal-TestDefinitions.rb')
- require pathname('RPC-Literal-TestDefinitionsDriver.rb')
- ensure
- Dir.chdir(backupdir)
- end
- end
-
- def teardown_server
- @server.shutdown
- @server_thread.kill
- @server_thread.join
- end
-
- def start_server_thread(server)
- t = Thread.new {
- Thread.current.abort_on_exception = true
- server.start
- }
- t
- end
-
- def pathname(filename)
- File.join(DIR, filename)
- end
-
- def test_wsdl_echoStringArray
- wsdl = pathname('test-rpc-lit.wsdl')
- @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
- @client.endpoint_url = "http://localhost:#{Port}/"
- @client.wiredump_dev = STDOUT if $DEBUG
- # response contains only 1 part.
- result = @client.echoStringArray(ArrayOfstring["a", "b", "c"])[0]
- assert_equal(["a", "b", "c"], result.stringItem)
- end
-
- ECHO_STRING_ARRAY_REQUEST =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoStringArray xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <inputStringArray xmlns:n2="http://soapbuilders.org/rpc-lit-test/types">
- <n2:stringItem>a</n2:stringItem>
- <n2:stringItem>b</n2:stringItem>
- <n2:stringItem>c</n2:stringItem>
- </inputStringArray>
- </n1:echoStringArray>
- </env:Body>
-</env:Envelope>]
-
- ECHO_STRING_ARRAY_RESPONSE =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoStringArrayResponse xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <return xmlns:n2="http://soapbuilders.org/rpc-lit-test/types">
- <n2:stringItem>a</n2:stringItem>
- <n2:stringItem>b</n2:stringItem>
- <n2:stringItem>c</n2:stringItem>
- </return>
- </n1:echoStringArrayResponse>
- </env:Body>
-</env:Envelope>]
-
- def test_stub_echoStringArray
- drv = SoapTestPortTypeRpc.new("http://localhost:#{Port}/")
- drv.wiredump_dev = str = ''
- # response contains only 1 part.
- result = drv.echoStringArray(ArrayOfstring["a", "b", "c"])[0]
- assert_equal(["a", "b", "c"], result.stringItem)
- assert_equal(ECHO_STRING_ARRAY_REQUEST, parse_requestxml(str))
- assert_equal(ECHO_STRING_ARRAY_RESPONSE, parse_responsexml(str))
- end
-
- ECHO_STRING_ARRAY_INLINE_REQUEST =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoStringArrayInline xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <inputStringArray>
- <stringItem>a</stringItem>
- <stringItem>b</stringItem>
- <stringItem>c</stringItem>
- </inputStringArray>
- </n1:echoStringArrayInline>
- </env:Body>
-</env:Envelope>]
-
- ECHO_STRING_ARRAY_INLINE_RESPONSE =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoStringArrayInlineResponse xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <return>
- <stringItem>a</stringItem>
- <stringItem>b</stringItem>
- <stringItem>c</stringItem>
- </return>
- </n1:echoStringArrayInlineResponse>
- </env:Body>
-</env:Envelope>]
-
- def test_stub_echoStringArrayInline
- drv = SoapTestPortTypeRpc.new("http://localhost:#{Port}/")
- drv.wiredump_dev = str = ''
- # response contains only 1 part.
- result = drv.echoStringArrayInline(ArrayOfstringInline["a", "b", "c"])[0]
- assert_equal(["a", "b", "c"], result.stringItem)
- assert_equal(ECHO_STRING_ARRAY_INLINE_REQUEST, parse_requestxml(str))
- assert_equal(ECHO_STRING_ARRAY_INLINE_RESPONSE, parse_responsexml(str))
- end
-
- ECHO_NESTED_STRUCT_REQUEST =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoNestedStruct xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <inputStruct xmlns:n2="http://soapbuilders.org/rpc-lit-test/types">
- <varString>str</varString>
- <varInt>1</varInt>
- <varFloat>+1</varFloat>
- <n2:structItem>
- <varString>str</varString>
- <varInt>1</varInt>
- <varFloat>+1</varFloat>
- </n2:structItem>
- </inputStruct>
- </n1:echoNestedStruct>
- </env:Body>
-</env:Envelope>]
-
- ECHO_NESTED_STRUCT_RESPONSE =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoNestedStructResponse xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <return xmlns:n2="http://soapbuilders.org/rpc-lit-test/types">
- <varString>str</varString>
- <varInt>1</varInt>
- <varFloat>+1</varFloat>
- <n2:structItem>
- <varString>str</varString>
- <varInt>1</varInt>
- <varFloat>+1</varFloat>
- </n2:structItem>
- </return>
- </n1:echoNestedStructResponse>
- </env:Body>
-</env:Envelope>]
-
- def test_wsdl_echoNestedStruct
- wsdl = pathname('test-rpc-lit.wsdl')
- @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
- @client.endpoint_url = "http://localhost:#{Port}/"
- @client.wiredump_dev = str = ''
- # response contains only 1 part.
- result = @client.echoNestedStruct(SOAPStructStruct.new("str", 1, 1.0, SOAPStruct.new("str", 1, 1.0)))[0]
- assert_equal('str', result.varString)
- assert_equal('1', result.varInt)
- assert_equal('+1', result.varFloat)
- assert_equal('str', result.structItem.varString)
- assert_equal('1', result.structItem.varInt)
- assert_equal('+1', result.structItem.varFloat)
- assert_equal(ECHO_NESTED_STRUCT_REQUEST, parse_requestxml(str))
- assert_equal(ECHO_NESTED_STRUCT_RESPONSE, parse_responsexml(str))
- end
-
- def test_stub_echoNestedStruct
- drv = SoapTestPortTypeRpc.new("http://localhost:#{Port}/")
- drv.wiredump_dev = str = ''
- # response contains only 1 part.
- result = drv.echoNestedStruct(SOAPStructStruct.new("str", 1, 1.0, SOAPStruct.new("str", 1, 1.0)))[0]
- assert_equal('str', result.varString)
- assert_equal('1', result.varInt)
- assert_equal('+1', result.varFloat)
- assert_equal('str', result.structItem.varString)
- assert_equal('1', result.structItem.varInt)
- assert_equal('+1', result.structItem.varFloat)
- assert_equal(ECHO_NESTED_STRUCT_REQUEST, parse_requestxml(str))
- assert_equal(ECHO_NESTED_STRUCT_RESPONSE, parse_responsexml(str))
- end
-
- ECHO_STRUCT_ARRAY_REQUEST =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoStructArray xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <inputStructArray xmlns:n2="http://soapbuilders.org/rpc-lit-test/types">
- <n2:structItem>
- <varString>str</varString>
- <varInt>2</varInt>
- <varFloat>+2.1</varFloat>
- </n2:structItem>
- <n2:structItem>
- <varString>str</varString>
- <varInt>2</varInt>
- <varFloat>+2.1</varFloat>
- </n2:structItem>
- </inputStructArray>
- </n1:echoStructArray>
- </env:Body>
-</env:Envelope>]
-
- ECHO_STRUCT_ARRAY_RESPONSE =
-%q[<?xml version="1.0" encoding="utf-8" ?>
-<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <env:Body>
- <n1:echoStructArrayResponse xmlns:n1="http://soapbuilders.org/rpc-lit-test">
- <return xmlns:n2="http://soapbuilders.org/rpc-lit-test/types">
- <n2:structItem>
- <varString>str</varString>
- <varInt>2</varInt>
- <varFloat>+2.1</varFloat>
- </n2:structItem>
- <n2:structItem>
- <varString>str</varString>
- <varInt>2</varInt>
- <varFloat>+2.1</varFloat>
- </n2:structItem>
- </return>
- </n1:echoStructArrayResponse>
- </env:Body>
-</env:Envelope>]
-
- def test_wsdl_echoStructArray
- wsdl = pathname('test-rpc-lit.wsdl')
- @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver
- @client.endpoint_url = "http://localhost:#{Port}/"
- @client.wiredump_dev = str = ''
- # response contains only 1 part.
- e = SOAPStruct.new("str", 2, 2.1)
- result = @client.echoStructArray(ArrayOfSOAPStruct[e, e])
- assert_equal(ECHO_STRUCT_ARRAY_REQUEST, parse_requestxml(str))
- assert_equal(ECHO_STRUCT_ARRAY_RESPONSE, parse_responsexml(str))
- end
-
- def test_stub_echoStructArray
- drv = SoapTestPortTypeRpc.new("http://localhost:#{Port}/")
- drv.wiredump_dev = str = ''
- # response contains only 1 part.
- e = SOAPStruct.new("str", 2, 2.1)
- result = drv.echoStructArray(ArrayOfSOAPStruct[e, e])
- assert_equal(ECHO_STRUCT_ARRAY_REQUEST, parse_requestxml(str))
- assert_equal(ECHO_STRUCT_ARRAY_RESPONSE, parse_responsexml(str))
- end
-
- def parse_requestxml(str)
- str.split(/\r?\n\r?\n/)[3]
- end
-
- def parse_responsexml(str)
- str.split(/\r?\n\r?\n/)[6]
- end
-end
-
-
-end; end
-
-end