mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/xmlrpc/client.rb (new2): raises an ArgumentError on bad
arguments. * test/xmlrpc/test_client.rb: tests for bad uris git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
60282ebfe5
commit
cd85cd25b4
3 changed files with 42 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
Sat Mar 3 08:20:10 2012 Aaron Patterson <aaron@tenderlovemaking.com>
|
||||||
|
|
||||||
|
* lib/xmlrpc/client.rb (new2): raises an ArgumentError on bad
|
||||||
|
arguments.
|
||||||
|
* test/xmlrpc/test_client.rb: tests for bad uris
|
||||||
|
|
||||||
Sat Mar 3 08:08:11 2012 Aaron Patterson <aaron@tenderlovemaking.com>
|
Sat Mar 3 08:08:11 2012 Aaron Patterson <aaron@tenderlovemaking.com>
|
||||||
|
|
||||||
* lib/xmlrpc/client.rb (new2): fix custom port specification when an
|
* lib/xmlrpc/client.rb (new2): fix custom port specification when an
|
||||||
|
|
|
@ -349,12 +349,12 @@ module XMLRPC
|
||||||
when 'http' then port ||= 80
|
when 'http' then port ||= 80
|
||||||
when 'https' then port ||= 443
|
when 'https' then port ||= 443
|
||||||
else
|
else
|
||||||
raise "Wrong protocol specified. Only http or https allowed!"
|
raise ArgumentError, "Wrong protocol specified. Only http or https allowed!"
|
||||||
end
|
end
|
||||||
|
|
||||||
port = port.to_i
|
port = port.to_i
|
||||||
else
|
else
|
||||||
raise "Wrong URI as parameter!"
|
raise ArgumentError, "Wrong URI as parameter!"
|
||||||
end
|
end
|
||||||
|
|
||||||
proxy_host, proxy_port = (proxy || "").split(":")
|
proxy_host, proxy_port = (proxy || "").split(":")
|
||||||
|
|
|
@ -98,5 +98,39 @@ module XMLRPC
|
||||||
|
|
||||||
[ user, password, use_ssl, timeout ].each { |x| refute x }
|
[ user, password, use_ssl, timeout ].each { |x| refute x }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_new2_no_path
|
||||||
|
client = FakeClient.new2 'http://example.org'
|
||||||
|
host, path, port, *rest = client.args
|
||||||
|
|
||||||
|
assert_equal 'example.org', host
|
||||||
|
assert_nil path
|
||||||
|
assert port
|
||||||
|
|
||||||
|
rest.each { |x| refute x }
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_new2_slash_path
|
||||||
|
client = FakeClient.new2 'http://example.org/'
|
||||||
|
host, path, port, *rest = client.args
|
||||||
|
|
||||||
|
assert_equal 'example.org', host
|
||||||
|
assert_equal '/', path
|
||||||
|
assert port
|
||||||
|
|
||||||
|
rest.each { |x| refute x }
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_new2_bad_protocol
|
||||||
|
assert_raises(ArgumentError) do
|
||||||
|
XMLRPC::Client.new2 'ftp://example.org'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def test_new2_bad_uri
|
||||||
|
assert_raises(ArgumentError) do
|
||||||
|
XMLRPC::Client.new2 ':::::'
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue