diff options
Diffstat (limited to 'ruby_1_8_6/test/wsdl/document')
-rw-r--r-- | ruby_1_8_6/test/wsdl/document/document.wsdl | 74 | ||||
-rw-r--r-- | ruby_1_8_6/test/wsdl/document/echo.rb | 92 | ||||
-rw-r--r-- | ruby_1_8_6/test/wsdl/document/number.wsdl | 54 | ||||
-rw-r--r-- | ruby_1_8_6/test/wsdl/document/ping_nosoapaction.wsdl | 66 | ||||
-rw-r--r-- | ruby_1_8_6/test/wsdl/document/test_nosoapaction.rb | 109 | ||||
-rw-r--r-- | ruby_1_8_6/test/wsdl/document/test_number.rb | 99 | ||||
-rw-r--r-- | ruby_1_8_6/test/wsdl/document/test_rpc.rb | 177 |
7 files changed, 0 insertions, 671 deletions
diff --git a/ruby_1_8_6/test/wsdl/document/document.wsdl b/ruby_1_8_6/test/wsdl/document/document.wsdl deleted file mode 100644 index fbf03fae8b..0000000000 --- a/ruby_1_8_6/test/wsdl/document/document.wsdl +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<definitions - name="echo" - targetNamespace="urn:docrpc" - xmlns:tns="urn:docrpc" - xmlns:xsd="http://www.w3.org/2001/XMLSchema" - xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" - xmlns="http://schemas.xmlsoap.org/wsdl/"> - <types> - <xsd:schema elementFormDefault="unqualified" targetNamespace="urn:docrpc"> - <xsd:complexType name="echo_struct"> - <xsd:sequence> - <xsd:element minOccurs="0" maxOccurs="1" name="m_string" type="xsd:string" /> - <xsd:element minOccurs="0" maxOccurs="1" name="m_datetime" type="xsd:dateTime" /> - </xsd:sequence> - <xsd:attribute name="m_attr" type="xsd:string" /> - </xsd:complexType> - - <xsd:element name="echoele"> - <xsd:complexType> - <xsd:sequence> - <xsd:element minOccurs="0" maxOccurs="1" name="struct1" type="tns:echo_struct" /> - <xsd:element minOccurs="0" maxOccurs="1" name="struct-2" type="tns:echo_struct" /> - </xsd:sequence> - <xsd:attribute name="attr_string" type="xsd:string" /> - <xsd:attribute name="attr-int" type="xsd:int" /> - </xsd:complexType> - </xsd:element> - <xsd:element name="echo_response"> - <xsd:complexType> - <xsd:sequence> - <xsd:element minOccurs="0" maxOccurs="1" name="struct1" type="tns:echo_struct" /> - <xsd:element minOccurs="0" maxOccurs="1" name="struct-2" type="tns:echo_struct" /> - </xsd:sequence> - <xsd:attribute name="attr_string" type="xsd:string" /> - <xsd:attribute name="attr-int" type="xsd:int" /> - </xsd:complexType> - </xsd:element> - </xsd:schema> - </types> - - <message name="echo_in"> - <part name="parameters" element="tns:echoele" /> - </message> - <message name="echo_out"> - <part name="parameters" element="tns:echo_response" /> - </message> - - <portType name="docrpc_porttype"> - <operation name="echo"> - <input message="tns:echo_in" /> - <output message="tns:echo_out" /> - </operation> - </portType> - - <binding name="docrpc_binding" type="tns:docrpc_porttype"> - <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> - <operation name="echo"> - <soap:operation soapAction="urn:docrpc:echo" style="document" /> - <input> - <soap:body use="literal" /> - </input> - <output> - <soap:body use="literal" /> - </output> - </operation> - </binding> - - <service name="docrpc_service"> - <port name="docprc_service_port" binding="tns:docrpc_binding"> - <soap:address location="http://localhost:17171/" /> - </port> - </service> -</definitions> diff --git a/ruby_1_8_6/test/wsdl/document/echo.rb b/ruby_1_8_6/test/wsdl/document/echo.rb deleted file mode 100644 index c6df75aca0..0000000000 --- a/ruby_1_8_6/test/wsdl/document/echo.rb +++ /dev/null @@ -1,92 +0,0 @@ -require 'xsd/qname' - -# {urn:docrpc}echoele -class Echoele - @@schema_type = "echoele" - @@schema_ns = "urn:docrpc" - @@schema_attribute = {XSD::QName.new(nil, "attr_string") => "SOAP::SOAPString", XSD::QName.new(nil, "attr-int") => "SOAP::SOAPInt"} - @@schema_element = [["struct1", ["Echo_struct", XSD::QName.new(nil, "struct1")]], ["struct_2", ["Echo_struct", XSD::QName.new(nil, "struct-2")]]] - - attr_accessor :struct1 - attr_accessor :struct_2 - - def xmlattr_attr_string - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr_string")] - end - - def xmlattr_attr_string=(value) - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr_string")] = value - end - - def xmlattr_attr_int - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr-int")] - end - - def xmlattr_attr_int=(value) - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr-int")] = value - end - - def initialize(struct1 = nil, struct_2 = nil) - @struct1 = struct1 - @struct_2 = struct_2 - @__xmlattr = {} - end -end - -# {urn:docrpc}echo_response -class Echo_response - @@schema_type = "echo_response" - @@schema_ns = "urn:docrpc" - @@schema_attribute = {XSD::QName.new(nil, "attr_string") => "SOAP::SOAPString", XSD::QName.new(nil, "attr-int") => "SOAP::SOAPInt"} - @@schema_element = [["struct1", ["Echo_struct", XSD::QName.new(nil, "struct1")]], ["struct_2", ["Echo_struct", XSD::QName.new(nil, "struct-2")]]] - - attr_accessor :struct1 - attr_accessor :struct_2 - - def xmlattr_attr_string - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr_string")] - end - - def xmlattr_attr_string=(value) - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr_string")] = value - end - - def xmlattr_attr_int - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr-int")] - end - - def xmlattr_attr_int=(value) - (@__xmlattr ||= {})[XSD::QName.new(nil, "attr-int")] = value - end - - def initialize(struct1 = nil, struct_2 = nil) - @struct1 = struct1 - @struct_2 = struct_2 - @__xmlattr = {} - end -end - -# {urn:docrpc}echo_struct -class Echo_struct - @@schema_type = "echo_struct" - @@schema_ns = "urn:docrpc" - @@schema_attribute = {XSD::QName.new(nil, "m_attr") => "SOAP::SOAPString"} - @@schema_element = [["m_string", ["SOAP::SOAPString", XSD::QName.new(nil, "m_string")]], ["m_datetime", ["SOAP::SOAPDateTime", XSD::QName.new(nil, "m_datetime")]]] - - attr_accessor :m_string - attr_accessor :m_datetime - - def xmlattr_m_attr - (@__xmlattr ||= {})[XSD::QName.new(nil, "m_attr")] - end - - def xmlattr_m_attr=(value) - (@__xmlattr ||= {})[XSD::QName.new(nil, "m_attr")] = value - end - - def initialize(m_string = nil, m_datetime = nil) - @m_string = m_string - @m_datetime = m_datetime - @__xmlattr = {} - end -end diff --git a/ruby_1_8_6/test/wsdl/document/number.wsdl b/ruby_1_8_6/test/wsdl/document/number.wsdl deleted file mode 100644 index cc3dd8e9f0..0000000000 --- a/ruby_1_8_6/test/wsdl/document/number.wsdl +++ /dev/null @@ -1,54 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<definitions - name="foo" - targetNamespace="urn:foo" - xmlns:tns="urn:foo" - xmlns:xsd="http://www.w3.org/2001/XMLSchema" - xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" - xmlns="http://schemas.xmlsoap.org/wsdl/"> - <types> - <xsd:schema elementFormDefault="unqualified" targetNamespace="urn:foo"> - <xsd:element name="get_foo"> - <xsd:complexType> - <xsd:sequence> - <xsd:element minOccurs="0" maxOccurs="1" name="number" type="xsd:string" /> - </xsd:sequence> - </xsd:complexType> - </xsd:element> - </xsd:schema> - </types> - - <message name="get_foo_in"> - <part name="parameters" element="tns:get_foo" /> - </message> - <message name="get_foo_out"> - <part name="parameters" type="xsd:string" /> - </message> - - <portType name="foo_porttype"> - <operation name="get_foo"> - <input message="tns:get_foo_in" /> - <output message="tns:get_foo_out" /> - </operation> - </portType> - - <binding name="foo_binding" type="tns:foo_porttype"> - <soap:binding transport="http://schemas.xmlsoap.org/soap/http" - style="document" /> - <operation name="get_foo"> - <soap:operation soapAction="urn:foo:get_foo" style="document" /> - <input> - <soap:body use="literal" /> - </input> - <output> - <soap:body use="literal" /> - </output> - </operation> - </binding> - - <service name="foo_service"> - <port name="foo_service_port" binding="tns:foo_binding"> - <soap:address location="http://localhost:17171/" /> - </port> - </service> -</definitions> diff --git a/ruby_1_8_6/test/wsdl/document/ping_nosoapaction.wsdl b/ruby_1_8_6/test/wsdl/document/ping_nosoapaction.wsdl deleted file mode 100644 index ab9529e456..0000000000 --- a/ruby_1_8_6/test/wsdl/document/ping_nosoapaction.wsdl +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<definitions xmlns:tns="http://xmlsoap.org/Ping" -xmlns="http://schemas.xmlsoap.org/wsdl/" -xmlns:xsd="http://www.w3.org/2001/XMLSchema" -xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" -targetNamespace="http://xmlsoap.org/Ping" name="Ping"> - <types> - <schema targetNamespace="http://xmlsoap.org/Ping" - xmlns="http://www.w3.org/2001/XMLSchema" - elementFormDefault="qualified"> - <complexType name="ping"> - <sequence> - <element name="scenario" type="xsd:string" - nillable="true"/> - <element name="origin" type="xsd:string" - nillable="true"/> - <element name="text" type="xsd:string" - nillable="true"/> - </sequence> - </complexType> - <complexType name="pingResponse"> - <sequence> - <element name="scenario" type="xsd:string" - nillable="true"/> - <element name="origin" type="xsd:string" - nillable="true"/> - <element name="text" type="xsd:string" - nillable="true"/> - </sequence> - </complexType> - <element name="Ping" type="tns:ping"/> - <element name="PingResponse" type="tns:pingResponse"/> - </schema> - </types> - <message name="PingRequest"> - <part name="ping" element="tns:Ping"/> - </message> - <message name="PingResponse"> - <part name="pingResponse" element="tns:PingResponse"/> - </message> - <portType name="PingPort"> - <operation name="Ping"> - <input message="tns:PingRequest"/> - <output message="tns:PingResponse"/> - </operation> - </portType> - <binding name="PingBinding" type="tns:PingPort"> - <soap:binding style="document" - transport="http://schemas.xmlsoap.org/soap/http"/> - <operation name="Ping"> - <soap:operation/> - <input> - <soap:body use="literal"/> - </input> - <output> - <soap:body use="literal"/> - </output> - </operation> - </binding> - <service name="PingService"> - <port name="PingPort" binding="tns:PingBinding"> - <soap:address - location="http://127.0.0.1:8080/axis/services/PingPort"/> - </port> - </service> -</definitions> diff --git a/ruby_1_8_6/test/wsdl/document/test_nosoapaction.rb b/ruby_1_8_6/test/wsdl/document/test_nosoapaction.rb deleted file mode 100644 index 77f642fe1b..0000000000 --- a/ruby_1_8_6/test/wsdl/document/test_nosoapaction.rb +++ /dev/null @@ -1,109 +0,0 @@ -require 'test/unit' -require 'wsdl/parser' -require 'wsdl/soap/wsdl2ruby' -require 'soap/rpc/standaloneServer' -require 'soap/wsdlDriver' -require 'soap/rpc/driver' - - -module WSDL; module Document - - -class TestNoSOAPAction < Test::Unit::TestCase - class Server < ::SOAP::RPC::StandaloneServer - Namespace = 'http://xmlsoap.org/Ping' - - def on_init - add_document_method( - self, - Namespace + '/ping', - 'ping_with_soapaction', - XSD::QName.new(Namespace, 'Ping'), - XSD::QName.new(Namespace, 'PingResponse') - ) - - add_document_method( - self, - nil, - 'ping', - XSD::QName.new(Namespace, 'Ping'), - XSD::QName.new(Namespace, 'PingResponse') - ) - - # When no SOAPAction given, latter method(ping) is called. - end - - def ping(arg) - arg.text = 'ping' - arg - end - - def ping_with_soapaction(arg) - arg.text = 'ping_with_soapaction' - arg - end - end - - DIR = File.dirname(File.expand_path(__FILE__)) - - Port = 17171 - - def setup - setup_server - @client = nil - end - - def teardown - teardown_server - @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 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 test_with_soapaction - wsdl = File.join(DIR, 'ping_nosoapaction.wsdl') - @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver - @client.endpoint_url = "http://localhost:#{Port}/" - @client.wiredump_dev = STDOUT if $DEBUG - rv = @client.ping(:scenario => 'scenario', :origin => 'origin', - :text => 'text') - assert_equal('scenario', rv.scenario) - assert_equal('origin', rv.origin) - assert_equal('ping', rv.text) - end - - def test_without_soapaction - @client = ::SOAP::RPC::Driver.new("http://localhost:#{Port}/", - Server::Namespace) - @client.add_document_method('ping', Server::Namespace + '/ping', - XSD::QName.new(Server::Namespace, 'Ping'), - XSD::QName.new(Server::Namespace, 'PingResponse')) - @client.wiredump_dev = STDOUT if $DEBUG - rv = @client.ping(:scenario => 'scenario', :origin => 'origin', - :text => 'text') - assert_equal('scenario', rv.scenario) - assert_equal('origin', rv.origin) - assert_equal('ping_with_soapaction', rv.text) - end -end - - -end; end diff --git a/ruby_1_8_6/test/wsdl/document/test_number.rb b/ruby_1_8_6/test/wsdl/document/test_number.rb deleted file mode 100644 index a640ef2a25..0000000000 --- a/ruby_1_8_6/test/wsdl/document/test_number.rb +++ /dev/null @@ -1,99 +0,0 @@ -require 'test/unit' -require 'wsdl/parser' -require 'wsdl/soap/wsdl2ruby' -require 'soap/rpc/standaloneServer' -require 'soap/wsdlDriver' - - -module WSDL; module Document - - -class TestNumber < Test::Unit::TestCase - class Server < ::SOAP::RPC::StandaloneServer - Namespace = 'urn:foo' - - def on_init - add_document_method( - self, - Namespace + ':get_foo', - 'get_foo', - XSD::QName.new(Namespace, 'get_foo'), - XSD::QName.new(Namespace, 'get_foo_response') - ) - end - - def get_foo(arg) - arg.number - end - end - - DIR = File.dirname(File.expand_path(__FILE__)) - Port = 17171 - - def setup - setup_server - setup_classdef - @client = nil - end - - def teardown - teardown_server - File.unlink(pathname('foo.rb')) - @client.reset_stream if @client - end - - def setup_server - @server = Server.new('Test', "urn:rpc", '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("number.wsdl") - gen.basedir = DIR - gen.logger.level = Logger::FATAL - gen.opt['classdef'] = nil - gen.opt['force'] = true - gen.run - require pathname('foo') - 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 - wsdl = File.join(DIR, 'number.wsdl') - @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver - @client.endpoint_url = "http://localhost:#{Port}/" - @client.wiredump_dev = STDOUT if $DEBUG - - # with the Struct defined in foo.rb, which is generated from WSDL - assert_equal("12345", @client.get_foo(Get_foo.new("12345"))) - - # with Hash - assert_equal("12345", @client.get_foo({:number => "12345"})) - - # with Original struct - get_foo_struct = Struct.new(:number) - assert_equal("12345", @client.get_foo(get_foo_struct.new("12345"))) - end -end - - -end; end diff --git a/ruby_1_8_6/test/wsdl/document/test_rpc.rb b/ruby_1_8_6/test/wsdl/document/test_rpc.rb deleted file mode 100644 index 56cd0677ad..0000000000 --- a/ruby_1_8_6/test/wsdl/document/test_rpc.rb +++ /dev/null @@ -1,177 +0,0 @@ -require 'test/unit' -require 'wsdl/parser' -require 'wsdl/soap/wsdl2ruby' -require 'soap/rpc/standaloneServer' -require 'soap/wsdlDriver' - - -module WSDL; module Document - - -class TestRPC < Test::Unit::TestCase - class Server < ::SOAP::RPC::StandaloneServer - Namespace = 'urn:docrpc' - - def on_init - add_document_method( - self, - Namespace + ':echo', - 'echo', - XSD::QName.new(Namespace, 'echo'), - XSD::QName.new(Namespace, 'echo_response') - ) - end - - def echo(arg) - if arg.is_a?(Echoele) - # swap args - tmp = arg.struct1 - arg.struct1 = arg.struct_2 - arg.struct_2 = tmp - arg - else - # swap args - tmp = arg["struct1"] - arg["struct1"] = arg["struct-2"] - arg["struct-2"] = tmp - arg - end - end - end - - DIR = File.dirname(File.expand_path(__FILE__)) - - Port = 17171 - - def setup - setup_server - setup_classdef - @client = nil - end - - def teardown - teardown_server - #File.unlink(pathname('echo.rb')) - @client.reset_stream if @client - end - - def setup_server - @server = Server.new('Test', "urn:rpc", '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("document.wsdl") - gen.basedir = DIR - gen.logger.level = Logger::FATAL - gen.opt['classdef'] = nil - gen.opt['force'] = true - gen.run - require pathname('echo') - 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 - wsdl = File.join(DIR, 'document.wsdl') - @client = ::SOAP::WSDLDriverFactory.new(wsdl).create_rpc_driver - @client.endpoint_url = "http://localhost:#{Port}/" - @client.wiredump_dev = STDOUT if $DEBUG - - struct1 = Echo_struct.new("mystring1", now1 = Time.now) - struct1.xmlattr_m_attr = 'myattr1' - struct2 = Echo_struct.new("mystring2", now2 = Time.now) - struct2.xmlattr_m_attr = 'myattr2' - echo = Echoele.new(struct1, struct2) - echo.xmlattr_attr_string = 'attr_string' - echo.xmlattr_attr_int = 5 - ret = @client.echo(echo) - - # struct#m_datetime in a response is a DateTime even though - # struct#m_datetime in a request is a Time. - timeformat = "%Y-%m-%dT%H:%M:%S" - assert_equal("mystring2", ret.struct1.m_string) - assert_equal(now2.strftime(timeformat), - date2time(ret.struct1.m_datetime).strftime(timeformat)) - assert_equal("mystring1", ret.struct_2.m_string) - assert_equal(now1.strftime(timeformat), - date2time(ret.struct_2.m_datetime).strftime(timeformat)) - assert_equal("attr_string", ret.xmlattr_attr_string) - assert_equal(5, ret.xmlattr_attr_int) - end - - def date2time(date) - if date.respond_to?(:to_time) - date.to_time - else - d = date.new_offset(0) - d.instance_eval { - Time.utc(year, mon, mday, hour, min, sec, - (sec_fraction * 86400000000).to_i) - }.getlocal - end - end - - include ::SOAP - def test_naive - @client = ::SOAP::RPC::Driver.new("http://localhost:#{Port}/") - @client.add_document_method('echo', 'urn:docrpc:echo', - XSD::QName.new('urn:docrpc', 'echoele'), - XSD::QName.new('urn:docrpc', 'echo_response')) - @client.wiredump_dev = STDOUT if $DEBUG - - echo = SOAPElement.new('foo') - echo.extraattr['attr_string'] = 'attr_string' - echo.extraattr['attr-int'] = 5 - echo.add(struct1 = SOAPElement.new('struct1')) - struct1.add(SOAPElement.new('m_string', 'mystring1')) - struct1.add(SOAPElement.new('m_datetime', '2005-03-17T19:47:31+01:00')) - struct1.extraattr['m_attr'] = 'myattr1' - echo.add(struct2 = SOAPElement.new('struct-2')) - struct2.add(SOAPElement.new('m_string', 'mystring2')) - struct2.add(SOAPElement.new('m_datetime', '2005-03-17T19:47:32+02:00')) - struct2.extraattr['m_attr'] = 'myattr2' - ret = @client.echo(echo) - timeformat = "%Y-%m-%dT%H:%M:%S" - assert_equal('mystring2', ret.struct1.m_string) - assert_equal('2005-03-17T19:47:32', - ret.struct1.m_datetime.strftime(timeformat)) - assert_equal("mystring1", ret.struct_2.m_string) - assert_equal('2005-03-17T19:47:31', - ret.struct_2.m_datetime.strftime(timeformat)) - assert_equal('attr_string', ret.xmlattr_attr_string) - assert_equal(5, ret.xmlattr_attr_int) - - echo = {'struct1' => {'m_string' => 'mystring1', 'm_datetime' => '2005-03-17T19:47:31+01:00'}, - 'struct-2' => {'m_string' => 'mystring2', 'm_datetime' => '2005-03-17T19:47:32+02:00'}} - ret = @client.echo(echo) - timeformat = "%Y-%m-%dT%H:%M:%S" - assert_equal('mystring2', ret.struct1.m_string) - assert_equal('2005-03-17T19:47:32', - ret.struct1.m_datetime.strftime(timeformat)) - assert_equal("mystring1", ret.struct_2.m_string) - assert_equal('2005-03-17T19:47:31', - ret.struct_2.m_datetime.strftime(timeformat)) - end -end - - -end; end |