mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
27 lines
746 B
Ruby
27 lines
746 B
Ruby
|
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)
|