httpclient 2.3.4.1 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
File without changes
@@ -0,0 +1,81 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <testsuite name="TestSSL" tests="6" time="1.364721588" failures="0" errors="0" skipped="0" assertions="31">
3
+ <testcase name="test_ciphers" time="0.314971752" assertions="4">
4
+ </testcase>
5
+ <testcase name="test_debug_dev" time="0.180549809" assertions="2">
6
+ </testcase>
7
+ <testcase name="test_options" time="0.109182463" assertions="9">
8
+ </testcase>
9
+ <testcase name="test_set_default_paths" time="0.197267769" assertions="1">
10
+ </testcase>
11
+ <testcase name="test_sync" time="0.24674528" assertions="2">
12
+ </testcase>
13
+ <testcase name="test_verification" time="0.312765839" assertions="13">
14
+ </testcase>
15
+ <system-out>
16
+ ["client", false, #&lt;OpenSSL::X509::StoreContext:0x007fda64c64030&gt;]
17
+ ["client", false, #&lt;OpenSSL::X509::StoreContext:0x007fda64b474b8&gt;]
18
+ ["client", false, #&lt;OpenSSL::X509::StoreContext:0x007fda64c4ede8&gt;]
19
+ ["client", true, #&lt;OpenSSL::X509::StoreContext:0x007fda64c254e8&gt;]
20
+ ["client", true, #&lt;OpenSSL::X509::StoreContext:0x007fda64c25038&gt;]
21
+ ["client", true, #&lt;OpenSSL::X509::StoreContext:0x007fda64c24c28&gt;]
22
+ ["client", false, #&lt;OpenSSL::X509::StoreContext:0x007fda64bb0260&gt;]
23
+ ["client", true, #&lt;OpenSSL::X509::StoreContext:0x007fda64ba7ae8&gt;]
24
+ ["client", true, #&lt;OpenSSL::X509::StoreContext:0x007fda64ba7638&gt;]
25
+ ["client", true, #&lt;OpenSSL::X509::StoreContext:0x007fda64ba7278&gt;]
26
+ ["client", false, #&lt;OpenSSL::X509::StoreContext:0x007fda64b7d0b8&gt;]
27
+ ["client", false, #&lt;OpenSSL::X509::StoreContext:0x007fda64b715b0&gt;]
28
+ </system-out>
29
+ <system-err>
30
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
31
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
32
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/ssl_config.rb:285 - SSL_CTX_set_cipher_list: no cipher match
33
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:194 - SSL_accept SYSCALL returned=5 errno=0 state=unknown state
34
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:198 - SSL_accept SYSCALL returned=5 errno=0 state=unknown state
35
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:167 - SSL_CTX_set_cipher_list: no cipher match
36
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
37
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
38
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
39
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
40
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
41
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
42
+ Exception `IOError' at /usr/local/lib/ruby/2.1.0/webrick/server.rb:170 - closed stream
43
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:303 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
44
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:194 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
45
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:198 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
46
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:167 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
47
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
48
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
49
+ Exception `IOError' at /usr/local/lib/ruby/2.1.0/webrick/server.rb:170 - closed stream
50
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
51
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
52
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
53
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
54
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:303 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
55
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:194 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
56
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:198 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
57
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:167 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
58
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:303 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
59
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:194 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
60
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:167 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
61
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:198 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
62
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:303 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
63
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:194 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
64
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:198 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
65
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:167 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
66
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
67
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
68
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:303 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
69
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:194 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
70
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:198 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
71
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:167 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
72
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
73
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
74
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:303 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
75
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:194 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
76
+ Exception `OpenSSL::SSL::SSLError' at /usr/local/lib/ruby/2.1.0/openssl/ssl.rb:198 - SSL_accept returned=1 errno=0 state=SSLv3 read client certificate A: sslv3 alert bad certificate
77
+ Exception `OpenSSL::SSL::SSLError' at /mnt/home/nahi/git/httpclient/lib/httpclient/session.rb:167 - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
78
+ Exception `EOFError' at /usr/local/lib/ruby/2.1.0/openssl/buffering.rb:61 - end of file reached
79
+ Exception `WEBrick::HTTPStatus::EOFError' at /usr/local/lib/ruby/2.1.0/webrick/httpserver.rb:80 - WEBrick::HTTPStatus::EOFError
80
+ </system-err>
81
+ </testsuite>
File without changes
@@ -1,5 +1,9 @@
1
1
  require File.expand_path('helper', File.dirname(__FILE__))
2
2
  require 'digest/md5'
3
+ require 'rack'
4
+ require 'rack/lint'
5
+ require 'rack/showexceptions'
6
+ require 'rack-ntlm'
3
7
 
4
8
  class TestAuth < Test::Unit::TestCase
5
9
  include Helper
@@ -34,6 +38,22 @@ class TestAuth < Test::Unit::TestCase
34
38
  '/digest_sess_auth',
35
39
  WEBrick::HTTPServlet::ProcHandler.new(method(:do_digest_sess_auth).to_proc)
36
40
  )
41
+ # NTLM endpoint
42
+ ntlm_handler = Rack::Handler::WEBrick.new(@server,
43
+ Rack::Builder.app do
44
+ use Rack::ShowExceptions
45
+ use Rack::ContentLength
46
+ use Rack::Ntlm, {:uri_pattern => /.*/, :auth => {:username => "admin", :password => "admin"}}
47
+ run lambda { |env| [200, { 'Content-Type' => 'text/html' }, ['ntlm_auth OK']] }
48
+ end
49
+ )
50
+ @server.mount(
51
+ '/ntlm_auth',
52
+ WEBrick::HTTPServlet::ProcHandler.new(Proc.new do |req, res|
53
+ ntlm_handler.service(req, res)
54
+ end)
55
+ )
56
+ # Htpasswd
37
57
  htpasswd = File.join(File.dirname(__FILE__), 'htpasswd')
38
58
  htpasswd_userdb = WEBrick::HTTPAuth::Htpasswd.new(htpasswd)
39
59
  htdigest = File.join(File.dirname(__FILE__), 'htdigest')
@@ -95,6 +115,16 @@ class TestAuth < Test::Unit::TestCase
95
115
  res.body = 'digest_sess_auth OK' + req.query_string.to_s
96
116
  end
97
117
 
118
+ # TODO: disables this test; it causes an exception because it seems
119
+ # that there's version incompatibility between
120
+ # rack-ntlm and rack-ntlm-test-services.
121
+ def __test_ntlm_auth
122
+ c = HTTPClient.new
123
+ c.set_auth("http://localhost:#{serverport}/ntlm_auth", 'admin', 'admin')
124
+ assert_equal('ntlm_auth OK', c.get_content("http://localhost:#{serverport}/ntlm_auth"))
125
+ puts c.inspect
126
+ end
127
+
98
128
  def test_basic_auth
99
129
  c = HTTPClient.new
100
130
  c.set_auth("http://localhost:#{serverport}/", 'admin', 'admin')
@@ -110,7 +140,6 @@ class TestAuth < Test::Unit::TestCase
110
140
  def test_BASIC_auth
111
141
  c = HTTPClient.new
112
142
  webrick_backup = @basic_auth.instance_eval { @auth_scheme }
113
- #httpaccess2_backup = c.www_auth.basic_auth.instance_eval { @scheme }
114
143
  begin
115
144
  @basic_auth.instance_eval { @auth_scheme = "BASIC" }
116
145
  c.www_auth.basic_auth.instance_eval { @scheme = "BASIC" }
@@ -118,7 +147,35 @@ class TestAuth < Test::Unit::TestCase
118
147
  assert_equal('basic_auth OK', c.get_content("http://localhost:#{serverport}/basic_auth"))
119
148
  ensure
120
149
  @basic_auth.instance_eval { @auth_scheme = webrick_backup }
121
- #c.www_auth.basic_auth.instance_eval { @scheme = httpaccess2_backup }
150
+ end
151
+ end
152
+
153
+ # To work this test consistently on CRuby you can to add 'Thread.pass' in
154
+ # @challenge iteration at BasicAuth#get like;
155
+ #
156
+ # return nil unless @challenge.find { |uri, ok|
157
+ # Thread.pass
158
+ # Util.uri_part_of(target_uri, uri) and ok
159
+ # }
160
+ def test_BASIC_auth_multi_thread
161
+ c = HTTPClient.new
162
+ webrick_backup = @basic_auth.instance_eval { @auth_scheme }
163
+ begin
164
+ @basic_auth.instance_eval { @auth_scheme = "BASIC" }
165
+ c.www_auth.basic_auth.instance_eval { @scheme = "BASIC" }
166
+ c.set_auth("http://localhost:#{serverport}/", 'admin', 'admin')
167
+
168
+ threads = 100.times.map { |idx|
169
+ Thread.new(idx) { |idx2|
170
+ Thread.abort_on_exception = true
171
+ Thread.pass
172
+ c.get("http://localhost:#{serverport}/basic_auth?#{idx2}")
173
+ }
174
+ }.map { |t|
175
+ t.join
176
+ }
177
+ ensure
178
+ @basic_auth.instance_eval { @auth_scheme = webrick_backup }
122
179
  end
123
180
  end
124
181
 
@@ -235,6 +235,27 @@ class TestCookieManager < Test::Unit::TestCase
235
235
  assert_equal("/", cookie.path)
236
236
  end
237
237
 
238
+ def test_parse_after_expiration
239
+ str = "inkid=n92b0ADOgACIgUb9lsjHqAAAHu2a; expires=Wed, 01-Dec-2010 00:00:00 GMT; path=/"
240
+ @cm.parse(str, urify('http://www.test.jp'))
241
+ cookie = @cm.cookies[0]
242
+ assert_instance_of(WebAgent::Cookie, cookie)
243
+ assert_equal("inkid", cookie.name)
244
+ assert_equal("n92b0ADOgACIgUb9lsjHqAAAHu2a", cookie.value)
245
+ assert_equal(Time.gm(2010, 12, 1, 0,0,0), cookie.expires)
246
+ assert_equal("/", cookie.path)
247
+
248
+ time = Time.at(Time.now.to_i + 60).utc
249
+ expires = time.strftime("%a, %d-%b-%Y %H:%M:%S GMT")
250
+ str = "inkid=n92b0ADOgACIgUb9lsjHqAAAHu2a; expires=#{expires}; path=/"
251
+ @cm.parse(str, urify('http://www.test.jp'))
252
+ cookie = @cm.cookies[0]
253
+ assert_equal("inkid", cookie.name)
254
+ assert_equal("n92b0ADOgACIgUb9lsjHqAAAHu2a", cookie.value)
255
+ assert_equal(time, cookie.expires)
256
+ assert_equal("/", cookie.path)
257
+ end
258
+
238
259
  def test_find_cookie()
239
260
  str = "xmen=off,0,0,1; path=/; domain=.excite2.co.jp; expires=Wednesday, 31-Dec-2037 12:00:00 GMT"
240
261
  @cm.parse(str, urify("http://www.excite2.co.jp/"))
@@ -678,7 +678,19 @@ EOS
678
678
  assert_nil(res.content)
679
679
  end
680
680
 
681
- def test_get_with_block_chunk_string_recycle
681
+ def test_get_with_block_arity_2
682
+ called = false
683
+ res = @client.get(serverurl + 'servlet') { |res, str|
684
+ assert_equal(200, res.status)
685
+ assert_equal('get', str)
686
+ called = true
687
+ }
688
+ assert(called)
689
+ # res does not have a content
690
+ assert_nil(res.content)
691
+ end
692
+
693
+ def test_get_with_block_string_recycle
682
694
  @client.read_block_size = 2
683
695
  body = []
684
696
  res = @client.get(serverurl + 'servlet') { |str|
@@ -688,6 +700,26 @@ EOS
688
700
  assert_equal("get", body.join) # Was "tt" by String object recycle...
689
701
  end
690
702
 
703
+ def test_get_with_block_chunked_string_recycle
704
+ server = TCPServer.open('localhost', 0)
705
+ server_thread = Thread.new {
706
+ Thread.abort_on_exception = true
707
+ sock = server.accept
708
+ create_keepalive_thread(1, sock)
709
+ }
710
+ url = "http://localhost:#{server.addr[1]}/"
711
+ body = []
712
+ begin
713
+ res = @client.get(url + 'chunked') { |str|
714
+ body << str
715
+ }
716
+ ensure
717
+ server.close
718
+ server_thread.join
719
+ end
720
+ assert_equal('abcdefghijklmnopqrstuvwxyz1234567890abcdef', body.join)
721
+ end
722
+
691
723
  def test_post
692
724
  assert_equal("post", @client.post(serverurl + 'servlet').content[0, 4])
693
725
  param = {'1'=>'2', '3'=>'4'}
@@ -134,7 +134,7 @@ end
134
134
 
135
135
  def test_ciphers
136
136
  cfg = @client.ssl_config
137
- cfg.set_client_cert_file(path('client.cert'), path('client.key'))
137
+ cfg.set_client_cert_file(path('client.cert'), path('client-pass.key'), 'pass4key')
138
138
  cfg.add_trust_ca(path('ca.cert'))
139
139
  cfg.add_trust_ca(path('subca.cert'))
140
140
  cfg.timeout = 123
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: httpclient
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.4.1
5
- prerelease:
4
+ version: 2.4.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Hiroshi Nakamura
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-07-27 00:00:00.000000000 Z
11
+ date: 2014-06-08 00:00:00.000000000 Z
13
12
  dependencies: []
14
13
  description:
15
14
  email: nahi@ruby-lang.org
@@ -18,91 +17,95 @@ executables:
18
17
  extensions: []
19
18
  extra_rdoc_files: []
20
19
  files:
20
+ - README.md
21
21
  - bin/httpclient
22
- - lib/httpclient.rb
23
- - lib/http-access2.rb
24
22
  - lib/hexdump.rb
25
- - lib/httpclient/timeout.rb
26
- - lib/httpclient/http.rb
27
- - lib/httpclient/ssl_config.rb
28
- - lib/httpclient/session.rb
29
- - lib/httpclient/version.rb
30
- - lib/httpclient/include_client.rb
23
+ - lib/http-access2.rb
24
+ - lib/http-access2/cookie.rb
25
+ - lib/http-access2/http.rb
26
+ - lib/httpclient.rb
27
+ - lib/httpclient/auth.rb
28
+ - lib/httpclient/cacert.p7s
31
29
  - lib/httpclient/connection.rb
32
30
  - lib/httpclient/cookie.rb
31
+ - lib/httpclient/http.rb
32
+ - lib/httpclient/include_client.rb
33
+ - lib/httpclient/session.rb
34
+ - lib/httpclient/ssl_config.rb
35
+ - lib/httpclient/timeout.rb
33
36
  - lib/httpclient/util.rb
34
- - lib/httpclient/auth.rb
35
- - lib/httpclient/cacert.p7s
37
+ - lib/httpclient/version.rb
36
38
  - lib/oauthclient.rb
37
- - lib/http-access2/http.rb
38
- - lib/http-access2/cookie.rb
39
+ - sample/api_rest.pdf
40
+ - sample/async.rb
41
+ - sample/auth.rb
42
+ - sample/cookie.rb
43
+ - sample/dav.rb
44
+ - sample/howto.rb
45
+ - sample/oauth_buzz.rb
46
+ - sample/oauth_friendfeed.rb
39
47
  - sample/oauth_salesforce_10.rb
48
+ - sample/oauth_twitter.rb
49
+ - sample/post.rb
40
50
  - sample/ssl/0cert.pem
41
51
  - sample/ssl/0key.pem
42
- - sample/ssl/ssl_client.rb
43
52
  - sample/ssl/1000cert.pem
53
+ - sample/ssl/1000key.pem
44
54
  - sample/ssl/htdocs/index.html
55
+ - sample/ssl/ssl_client.rb
45
56
  - sample/ssl/webrick_httpsd.rb
46
- - sample/ssl/1000key.pem
47
- - sample/oauth_twitter.rb
48
- - sample/thread.rb
49
- - sample/dav.rb
50
- - sample/oauth_friendfeed.rb
51
57
  - sample/stream.rb
52
- - sample/howto.rb
53
- - sample/oauth_buzz.rb
58
+ - sample/thread.rb
54
59
  - sample/wcat.rb
55
- - sample/async.rb
56
- - sample/cookie.rb
57
- - sample/auth.rb
58
- - test/test_ssl.rb
59
- - test/htdigest
60
- - test/server.key
61
- - test/client.key
60
+ - test/ca-chain.cert
61
+ - test/ca.cert
62
+ - test/client-pass.key
62
63
  - test/client.cert
64
+ - test/client.key
65
+ - test/helper.rb
66
+ - test/htdigest
63
67
  - test/htpasswd
64
- - test/ca.cert
65
- - test/test_cookie.rb
66
- - test/sslsvr.rb
67
- - test/test_http-access2.rb
68
+ - test/reports/TEST-HTTPAccess2-TestClient.xml
69
+ - test/reports/TEST-TestCookie.xml
70
+ - test/reports/TEST-TestCookieManager.xml
71
+ - test/reports/TEST-TestHTTPClient.xml
72
+ - test/reports/TEST-TestSSL.0.xml
73
+ - test/reports/TEST-TestSSL.1.xml
74
+ - test/reports/TEST-TestSSL.xml
68
75
  - test/runner.rb
69
76
  - test/server.cert
70
- - test/ca-chain.cert
77
+ - test/server.key
78
+ - test/sslsvr.rb
79
+ - test/subca.cert
71
80
  - test/test_auth.rb
72
- - test/test_httpclient.rb
73
- - test/helper.rb
81
+ - test/test_cookie.rb
74
82
  - test/test_hexdump.rb
83
+ - test/test_http-access2.rb
84
+ - test/test_httpclient.rb
75
85
  - test/test_include_client.rb
76
- - test/subca.cert
77
- - README.txt
86
+ - test/test_ssl.rb
78
87
  homepage: http://github.com/nahi/httpclient
79
- licenses: []
88
+ licenses:
89
+ - ruby
90
+ metadata: {}
80
91
  post_install_message:
81
92
  rdoc_options: []
82
93
  require_paths:
83
94
  - lib
84
95
  required_ruby_version: !ruby/object:Gem::Requirement
85
- none: false
86
96
  requirements:
87
- - - ! '>='
97
+ - - ">="
88
98
  - !ruby/object:Gem::Version
89
99
  version: '0'
90
- segments:
91
- - 0
92
- hash: -1409690202161290935
93
100
  required_rubygems_version: !ruby/object:Gem::Requirement
94
- none: false
95
101
  requirements:
96
- - - ! '>='
102
+ - - ">="
97
103
  - !ruby/object:Gem::Version
98
104
  version: '0'
99
- segments:
100
- - 0
101
- hash: -1409690202161290935
102
105
  requirements: []
103
106
  rubyforge_project:
104
- rubygems_version: 1.8.23
107
+ rubygems_version: 2.2.2
105
108
  signing_key:
106
- specification_version: 3
109
+ specification_version: 4
107
110
  summary: gives something like the functionality of libwww-perl (LWP) in Ruby
108
111
  test_files: []