fix r66163
OpenSSL maybe aren't loaded in rubygems. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
69ab98ffb5
commit
67f59eb4ab
@ -274,7 +274,8 @@ class Gem::RemoteFetcher
|
|||||||
raise
|
raise
|
||||||
rescue Timeout::Error
|
rescue Timeout::Error
|
||||||
raise UnknownHostError.new('timed out', uri.to_s)
|
raise UnknownHostError.new('timed out', uri.to_s)
|
||||||
rescue IOError, SocketError, SystemCallError, OpenSSL::SSL::SSLError => e
|
rescue IOError, SocketError, SystemCallError,
|
||||||
|
*(OpenSSL::SSL::SSLError if defined?(OpenSSL)) => e
|
||||||
if e.message =~ /getaddrinfo/
|
if e.message =~ /getaddrinfo/
|
||||||
raise UnknownHostError.new('no such name', uri.to_s)
|
raise UnknownHostError.new('no such name', uri.to_s)
|
||||||
else
|
else
|
||||||
|
@ -516,6 +516,24 @@ PeIQQkFng2VVot/WAQbv3ePqWq07g1BBcwIBAg==
|
|||||||
assert_equal url, e.uri
|
assert_equal url, e.uri
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_fetch_path_openssl_ssl_sslerror
|
||||||
|
fetcher = Gem::RemoteFetcher.new nil
|
||||||
|
@fetcher = fetcher
|
||||||
|
|
||||||
|
def fetcher.fetch_http(uri, mtime = nil, head = nil)
|
||||||
|
raise OpenSSL::SSL::SSLError
|
||||||
|
end
|
||||||
|
|
||||||
|
url = 'http://example.com/uri'
|
||||||
|
|
||||||
|
e = assert_raises Gem::RemoteFetcher::FetchError do
|
||||||
|
fetcher.fetch_path url
|
||||||
|
end
|
||||||
|
|
||||||
|
assert_equal "OpenSSL::SSL::SSLError: OpenSSL::SSL::SSLError (#{url})", e.message
|
||||||
|
assert_equal url, e.uri
|
||||||
|
end
|
||||||
|
|
||||||
def test_fetch_path_unmodified
|
def test_fetch_path_unmodified
|
||||||
fetcher = Gem::RemoteFetcher.new nil
|
fetcher = Gem::RemoteFetcher.new nil
|
||||||
@fetcher = fetcher
|
@fetcher = fetcher
|
||||||
|
Loading…
x
Reference in New Issue
Block a user