summaryrefslogtreecommitdiff
path: root/sample/soap/calc/client.rb
diff options
context:
space:
mode:
Diffstat (limited to 'sample/soap/calc/client.rb')
-rw-r--r--sample/soap/calc/client.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/sample/soap/calc/client.rb b/sample/soap/calc/client.rb
new file mode 100644
index 0000000000..57a4c0ba5b
--- /dev/null
+++ b/sample/soap/calc/client.rb
@@ -0,0 +1,26 @@
+require 'soap/rpc/driver'
+
+server = ARGV.shift || 'http://localhost:7000/'
+# server = 'http://localhost:8808/server.cgi'
+
+calc = SOAP::RPC::Driver.new(server, 'http://tempuri.org/calcService')
+#calc.wiredump_dev = STDERR
+calc.add_method('add', 'lhs', 'rhs')
+calc.add_method('sub', 'lhs', 'rhs')
+calc.add_method('multi', 'lhs', 'rhs')
+calc.add_method('div', 'lhs', 'rhs')
+
+puts 'add: 1 + 2 # => 3'
+puts calc.add(1, 2)
+puts 'sub: 1.1 - 2.2 # => -1.1'
+puts calc.sub(1.1, 2.2)
+puts 'multi: 1.1 * 2.2 # => 2.42'
+puts calc.multi(1.1, 2.2)
+puts 'div: 5 / 2 # => 2'
+puts calc.div(5, 2)
+puts 'div: 5.0 / 2 # => 2.5'
+puts calc.div(5.0, 2)
+puts 'div: 1.1 / 0 # => Infinity'
+puts calc.div(1.1, 0)
+puts 'div: 1 / 0 # => ZeroDivisionError'
+puts calc.div(1, 0)