diff options
Diffstat (limited to 'ruby_1_8_6/test/wsdl/test_multiplefault.rb')
-rw-r--r-- | ruby_1_8_6/test/wsdl/test_multiplefault.rb | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/ruby_1_8_6/test/wsdl/test_multiplefault.rb b/ruby_1_8_6/test/wsdl/test_multiplefault.rb new file mode 100644 index 0000000000..7004297dc9 --- /dev/null +++ b/ruby_1_8_6/test/wsdl/test_multiplefault.rb @@ -0,0 +1,39 @@ +require 'test/unit' +require 'wsdl/parser' +require 'wsdl/soap/classDefCreator' + + +module WSDL + + +class TestMultipleFault < Test::Unit::TestCase + def self.setup(filename) + @@filename = filename + end + + def test_multiplefault + @wsdl = WSDL::Parser.new.parse(File.open(@@filename) { |f| f.read }) + classdefstr = WSDL::SOAP::ClassDefCreator.new(@wsdl).dump + yield_eval_binding(classdefstr) do |b| + assert_equal( + WSDL::TestMultipleFault::AuthenticationError, + eval("AuthenticationError", b) + ) + assert_equal( + WSDL::TestMultipleFault::AuthorizationError, + eval("AuthorizationError", b) + ) + end + end + + def yield_eval_binding(evaled) + b = binding + eval(evaled, b) + yield(b) + end +end + +TestMultipleFault.setup(File.join(File.dirname(__FILE__), 'multiplefault.wsdl')) + + +end |