diff options
author | Leon Breedt <bitserf@gmail.com> | 2005-02-27 21:21:40 +0000 |
---|---|---|
committer | Leon Breedt <bitserf@gmail.com> | 2005-02-27 21:21:40 +0000 |
commit | 100015cd806e31578a03ba23ffbc12c093118a26 (patch) | |
tree | 20cd8b5f8fd8cbfb60f2b8d2f309c0c259889d50 /actionwebservice/test/dispatcher_action_controller_soap_test.rb | |
parent | 19dddf24a63bd8a715ca47955963ba77d174d830 (diff) | |
download | rails-100015cd806e31578a03ba23ffbc12c093118a26.tar.gz rails-100015cd806e31578a03ba23ffbc12c093118a26.tar.bz2 rails-100015cd806e31578a03ba23ffbc12c093118a26.zip |
Make all custom types and method calls are declared in the 'urn:ActionWebService'
namespace as a default, fixes SOAP marshaling for .NET, a regression since the merge.
Make array annotation be recursive in WS::Marshaling::SoapMarshaling, this makes
typed arrays buried in nested structures still be annotated correctly.
Support :layered dispatching mode for XML-RPC namespaced method names.
Change WS::ParamInfo.create signature to require type_binding, and update all
uses of this.
Restore #default_api_method functionality, fixes a regression since the merge.
Fix marshalling of ActiveRecord::Base derivatives, fixes a regression since the merge.
This changeset closes #676, #677, and #678.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@811 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionwebservice/test/dispatcher_action_controller_soap_test.rb')
-rw-r--r-- | actionwebservice/test/dispatcher_action_controller_soap_test.rb | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/actionwebservice/test/dispatcher_action_controller_soap_test.rb b/actionwebservice/test/dispatcher_action_controller_soap_test.rb index 9cb99be78d..6d50bbba8a 100644 --- a/actionwebservice/test/dispatcher_action_controller_soap_test.rb +++ b/actionwebservice/test/dispatcher_action_controller_soap_test.rb @@ -11,10 +11,11 @@ class TC_DispatcherActionControllerSoap < Test::Unit::TestCase include DispatcherCommonTests def setup - @encoder = WS::Encoding::SoapRpcEncoding.new - @marshaler = WS::Marshaling::SoapMarshaler.new + @encoder = WS::Encoding::SoapRpcEncoding.new 'urn:ActionWebService' + @marshaler = WS::Marshaling::SoapMarshaler.new 'urn:ActionWebService' @direct_controller = DirectController.new @delegated_controller = DelegatedController.new + @virtual_controller = VirtualController.new end def test_wsdl_generation @@ -23,8 +24,15 @@ class TC_DispatcherActionControllerSoap < Test::Unit::TestCase end def test_wsdl_action - ensure_valid_wsdl_action DelegatedController.new - ensure_valid_wsdl_action DirectController.new + delegated_types = ensure_valid_wsdl_action DelegatedController.new + delegated_names = delegated_types.map{|x| x.name.name} + assert(delegated_names.include?('DispatcherTest..NodeArray')) + assert(delegated_names.include?('DispatcherTest..Node')) + direct_types = ensure_valid_wsdl_action DirectController.new + direct_names = direct_types.map{|x| x.name.name} + assert(direct_names.include?('DispatcherTest..NodeArray')) + assert(direct_names.include?('DispatcherTest..Node')) + assert(direct_names.include?('IntegerArray')) end def test_autoloading @@ -80,6 +88,11 @@ class TC_DispatcherActionControllerSoap < Test::Unit::TestCase assert(port.name.name.index(':').nil?) end end + types = definitions.collect_complextypes.map{|x| x.name} + types.each do |type| + assert(type.namespace == 'urn:ActionWebService') + end + definitions.collect_complextypes end def ensure_valid_wsdl_action(controller) |