summaryrefslogtreecommitdiffstats
path: root/test/soap/calc/test_calc_cgi.rb
diff options
context:
space:
mode:
authornahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-09-24 15:18:44 +0000
committernahi <nahi@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-09-24 15:18:44 +0000
commit7957062899260c10d0a45ab27c9ab3475a4972c3 (patch)
treea311d59f031ae5def87f68be71ed1f58abadc031 /test/soap/calc/test_calc_cgi.rb
parent77a4b63f92cdcf0deb76dc0eeae464a55f5da789 (diff)
downloadruby-7957062899260c10d0a45ab27c9ab3475a4972c3.tar.gz
ruby-7957062899260c10d0a45ab27c9ab3475a4972c3.tar.xz
ruby-7957062899260c10d0a45ab27c9ab3475a4972c3.zip
* lib/soap/* (29 files): SOAP4R added.
* lib/wsdl/* (42 files): WSDL4R added. * lib/xsd/* (12 files): XSD4R added. * test/soap/* (16 files): added. * test/wsdl/* (2 files): added. * test/xsd/* (3 files): added. * sample/soap/* (27 files): added. * sample/wsdl/* (13 files): added. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@4591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/soap/calc/test_calc_cgi.rb')
-rw-r--r--test/soap/calc/test_calc_cgi.rb42
1 files changed, 42 insertions, 0 deletions
diff --git a/test/soap/calc/test_calc_cgi.rb b/test/soap/calc/test_calc_cgi.rb
new file mode 100644
index 000000000..682356e52
--- /dev/null
+++ b/test/soap/calc/test_calc_cgi.rb
@@ -0,0 +1,42 @@
+require 'test/unit'
+require 'soap/rpc/driver'
+require 'webrick'
+
+class TestCalcCGI < Test::Unit::TestCase
+ def setup
+ @server = WEBrick::HTTPServer.new(
+ :BindAddress => "0.0.0.0",
+ :Port => 8808,
+ :DocumentRoot => File.dirname(File.expand_path(__FILE__)),
+ :CGIPathEnv => ENV['PATH']
+ )
+ @t = Thread.new {
+ @server.start
+ }
+ while @server.status != :Running
+ sleep 0.1
+ end
+ @calc = SOAP::RPC::Driver.new('http://localhost:8808/server.cgi', 'http://tempuri.org/calcService')
+ @calc.add_method('add', 'lhs', 'rhs')
+ @calc.add_method('sub', 'lhs', 'rhs')
+ @calc.add_method('multi', 'lhs', 'rhs')
+ @calc.add_method('div', 'lhs', 'rhs')
+ end
+
+ def teardown
+ @server.shutdown
+ @t.kill
+ end
+
+ def test_calc
+ assert_equal(3, @calc.add(1, 2))
+ assert_equal(-1.1, @calc.sub(1.1, 2.2))
+ assert_equal(2.42, @calc.multi(1.1, 2.2))
+ assert_equal(2, @calc.div(5, 2))
+ assert_equal(2.5, @calc.div(5.0, 2))
+ assert_equal(1.0/0.0, @calc.div(1.1, 0))
+ assert_raises(ZeroDivisionError) do
+ @calc.div(1, 0)
+ end
+ end
+end