http.rb 0.11.1 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cbf011f369bb382e03c0ec192cb6ab4d0cad2f0e
4
- data.tar.gz: 0f6803e5073848ba81088f019cd70e3d10be1f66
3
+ metadata.gz: 751b8b4052533b0498e04222713234378e7a0eb2
4
+ data.tar.gz: f14d21a8c49ac437c252f03be490a139e5551126
5
5
  SHA512:
6
- metadata.gz: 0e2584ee7057eebefe3bea61cc7946b92e0a8b11032aceb3c512dff88c62069924233ef82384199f0eb82785d53df3a1b04499c584ac6e8fda2e150f394b9745
7
- data.tar.gz: ec8300cb750bc3afd170a29a99de366b6d821a52d7f1ae26ff5d9ae5cd394dab0094cb90b8f866d7dbb2af43b4a94cf0bdd93b17da5b7bbd43531f39f672f7fc
6
+ metadata.gz: 6ac92d7be20b5d4e260ed369a974b36c988f6f059eefeb6eddb04cbeb3fc6bd67c325ebd02093660deb6201f799ae028a13fed64f4ce1e0289199742d4b0afe1
7
+ data.tar.gz: 0b4abaec5371343017d3d42c2d24b9f3e84fcc2b0a29feef493a8f695bd9f3f1b4162dde3522cd4b26cd508790db4145a08a94e04e254c9bdb28c8df87bd4686
data/README.md CHANGED
@@ -89,6 +89,92 @@ end
89
89
 
90
90
  ```
91
91
 
92
+ ## Allowed values for the options hash (which passes through to Net::HTTP)
93
+ ```Ruby
94
+ ca_file
95
+ # Sets path of a CA certification file in PEM format.
96
+ #
97
+ # The file can contain several CA certificates.
98
+
99
+ ca_path
100
+ # Sets path of a CA certification directory containing certifications in
101
+ # PEM format.
102
+
103
+ cert
104
+ # Sets an OpenSSL::X509::Certificate object as client certificate.
105
+ # (This method is appeared in Michal Rokos's OpenSSL extension).
106
+
107
+ cert_store
108
+ # Sets the X509::Store to verify peer certificate.
109
+
110
+ ciphers
111
+ # Sets the available ciphers. See OpenSSL::SSL::SSLContext#ciphers=
112
+
113
+ close_on_empty_response
114
+
115
+ continue_timeout
116
+ # Number of seconds to wait for one block to be read (via one read(2)
117
+ # call). Any number may be used, including Floats for fractional
118
+ # seconds. If the HTTP object cannot read data in this many seconds,
119
+ # it raises a Net::ReadTimeout exception. The default value is 60 seconds.
120
+
121
+ keep_alive_timeout
122
+ # Seconds to reuse the connection of the previous request.
123
+ # If the idle time is less than this Keep-Alive Timeout,
124
+ # Net::HTTP reuses the TCP/IP socket used by the previous communication.
125
+ # The default value is 2 seconds.
126
+
127
+ key
128
+ # Sets an OpenSSL::PKey::RSA or OpenSSL::PKey::DSA object.
129
+ # (This method is appeared in Michal Rokos's OpenSSL extension.)
130
+
131
+ local_host
132
+ # The local host used to establish the connection.
133
+
134
+ local_port
135
+ # The local port used to establish the connection.
136
+
137
+ open_timeout
138
+ # Number of seconds to wait for the connection to open. Any number
139
+ # may be used, including Floats for fractional seconds. If the HTTP
140
+ # object cannot open a connection in this many seconds, it raises a
141
+ # Net::OpenTimeout exception. The default value is 60 seconds.
142
+
143
+ proxy_address
144
+ proxy_from_env
145
+ proxy_pass
146
+ proxy_port
147
+ proxy_user
148
+
149
+ read_timeout
150
+ # Seconds to wait for 100 Continue response. If the HTTP object does not
151
+ # receive a response in this many seconds it sends the request body. The
152
+ # default value is +nil+.
153
+
154
+ ssl_timeout
155
+ # Sets the SSL timeout seconds.
156
+
157
+ ssl_version
158
+ # Sets the SSL version. See OpenSSL::SSL::SSLContext#ssl_version=
159
+
160
+ use_ssl
161
+ # Turn on/off SSL.
162
+ # This flag must be set before starting session.
163
+ # If you change use_ssl value after session started,
164
+ # a Net::HTTP object raises IOError.
165
+
166
+ verify_callback
167
+ # Sets the verify callback for the server certification verification.
168
+
169
+ verify_depth
170
+ # Sets the maximum depth for the certificate chain verification.
171
+
172
+ verify_mode
173
+ # Sets the flags for server the certification verification at beginning of
174
+ # SSL/TLS session.
175
+ #
176
+ # OpenSSL::SSL::VERIFY_NONE or OpenSSL::SSL::VERIFY_PEER are acceptable.
177
+ ```
92
178
 
93
179
  ## Contributing
94
180
 
@@ -1,11 +1,11 @@
1
1
  Gem::Specification.new do |s|
2
- s.name = 'http.rb'
3
- s.version = '0.11.1'
4
- s.date = '2015-05-18'
2
+ s.name = 'http.rb' # I would have preferred 'http', but there's a library called http.rb with the gem name of http. Confusing, eh?
3
+ s.version = '0.12.0'
4
+ s.date = '2017-10-07'
5
5
 
6
6
  s.summary = "HTTP made easy."
7
7
  s.description = "HTTP is the simplest HTTP mezzanine library for Ruby. Supply a URI, \
8
- some optional query arguments, some optional headers, and some other SSL or \
8
+ some optional query arguments, some optional headers, and some \
9
9
  Net::HTTP options, and that's it!"
10
10
  s.author = 'thoran'
11
11
  s.email = 'code@thoran.com'
@@ -9,6 +9,7 @@ lib_dir = File.expand_path(File.join(__FILE__, '..', '..'))
9
9
  $LOAD_PATH.unshift(lib_dir) unless $LOAD_PATH.include?(lib_dir)
10
10
 
11
11
  require 'Hash/x_www_form_urlencode'
12
+ require 'Net/HTTP/set_options'
12
13
  require 'Net/HTTP/Get/set_headers'
13
14
  require 'URI/Generic/use_sslQ'
14
15
 
@@ -17,15 +18,21 @@ module HTTP
17
18
  def get(uri, args = {}, headers = {}, options = {}, &block)
18
19
  uri = uri.is_a?(URI) ? uri : URI.parse(uri)
19
20
  http = Net::HTTP.new(uri.host, uri.port)
20
- http.use_ssl = options[:use_ssl] || uri.use_ssl?
21
- http.verify_mode = options[:verify_mode] || OpenSSL::SSL::VERIFY_NONE
22
- options.each{|k,v| http.send("#{k}=", v)}
21
+ options[:use_ssl] ||= uri.use_ssl?
22
+ options[:verify_mode] ||= OpenSSL::SSL::VERIFY_NONE
23
+ http.options = options
23
24
  request_object = Net::HTTP::Get.new(uri.request_uri + '?' + args.x_www_form_urlencode)
24
25
  request_object.headers = headers
25
26
  request_object.basic_auth(uri.user, uri.password) if uri.user
26
27
  response = http.request(request_object)
27
28
  if response.code =~ /^3/
28
- response = get(response.header['location'], {}, {}, options, &block)
29
+ redirect_uri = URI.parse(response.header['location'])
30
+ if redirect_uri.scheme
31
+ response = get(response.header['location'], {}, {}, options, &block)
32
+ else
33
+ new_location = "http://#{uri.host}:#{uri.port}#{response.header['location']}"
34
+ response = get(new_location, {}, {}, options, &block)
35
+ end
29
36
  end
30
37
  if block_given?
31
38
  yield response
@@ -9,6 +9,7 @@ lib_dir = File.expand_path(File.join(__FILE__, '..', '..'))
9
9
  $LOAD_PATH.unshift(lib_dir) unless $LOAD_PATH.include?(lib_dir)
10
10
 
11
11
  require 'HTTP/get'
12
+ require 'Net/HTTP/set_options'
12
13
  require 'Net/HTTP/Post/set_headers'
13
14
  require 'URI/Generic/use_sslQ'
14
15
 
@@ -17,16 +18,22 @@ module HTTP
17
18
  def post(uri, form_data = {}, headers = {}, options = {}, &block)
18
19
  uri = uri.is_a?(URI) ? uri : URI.parse(uri)
19
20
  http = Net::HTTP.new(uri.host, uri.port)
20
- http.use_ssl = options[:use_ssl] || uri.use_ssl?
21
- http.verify_mode = options[:verify_mode] || OpenSSL::SSL::VERIFY_NONE
22
- options.each{|k,v| http.send("#{k}=", v)}
21
+ options[:use_ssl] ||= uri.use_ssl?
22
+ options[:verify_mode] ||= OpenSSL::SSL::VERIFY_NONE
23
+ http.options = options
23
24
  request_object = Net::HTTP::Post.new(uri.request_uri)
24
25
  request_object.form_data = form_data
25
26
  request_object.headers = headers
26
27
  request_object.basic_auth(uri.user, uri.password) if uri.user
27
28
  response = http.request(request_object)
28
29
  if response.code =~ /^3/
29
- response = get(response.header['location'], {}, {}, options, &block)
30
+ redirect_uri = URI.parse(response.header['location'])
31
+ if redirect_uri.scheme
32
+ response = get(response.header['location'], {}, {}, options, &block)
33
+ else
34
+ new_location = "http://#{uri.host}:#{uri.port}#{response.header['location']}"
35
+ response = get(new_location, {}, {}, options, &block)
36
+ end
30
37
  end
31
38
  if block_given?
32
39
  yield response
@@ -0,0 +1,16 @@
1
+ # Net/HTTP/set_options.rb
2
+ # Net::HTTP#set_options
3
+
4
+ # 20171007
5
+ # 0.0.0
6
+
7
+ module Net
8
+ class HTTP
9
+
10
+ def set_options(options = {})
11
+ options.each{|k,v| self.send("#{k}=", v)}
12
+ end
13
+ alias_method :options=, :set_options
14
+
15
+ end
16
+ end
@@ -6,9 +6,6 @@ $LOAD_PATH.unshift(spec_dir) unless $LOAD_PATH.include?(spec_dir)
6
6
  require 'spec_helper'
7
7
  require 'HTTP/get'
8
8
 
9
- WebMock.enable!
10
- WebMock.disable_net_connect!(allow_localhost: true)
11
-
12
9
  describe ".get" do
13
10
 
14
11
  context "with uri-only supplied" do
@@ -144,12 +141,12 @@ describe ".get" do
144
141
  before do
145
142
  stub_request(:get, request_uri).
146
143
  with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
147
- to_return(status: '301', body: '', headers: {'location' => redirect_uri})
144
+ to_return(status: 301, body: '', headers: {'location' => redirect_uri})
148
145
  end
149
146
 
150
147
  it "does a redirect" do
151
148
  expect(HTTP).to receive(:get).once.with(request_uri).and_call_original
152
- expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {}).and_call_original
149
+ expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
153
150
  HTTP.get(request_uri)
154
151
  end
155
152
  end
@@ -158,12 +155,52 @@ describe ".get" do
158
155
  before do
159
156
  stub_request(:get, request_uri).
160
157
  with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
161
- to_return(status: '302', body: '', headers: {'location' => redirect_uri})
158
+ to_return(status: 302, body: '', headers: {'location' => redirect_uri})
162
159
  end
163
160
 
164
161
  it "does a redirect" do
165
- expect(HTTP).to receive(:get).with(request_uri).and_call_original
166
- expect(HTTP).to receive(:get).with(redirect_uri, {}, {}, {}).and_call_original
162
+ expect(HTTP).to receive(:get).once.with(request_uri).and_call_original
163
+ expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
164
+ HTTP.get(request_uri)
165
+ end
166
+ end
167
+ end
168
+
169
+ context "with path only redirection" do
170
+ let(:request_uri){'http://example.com/path'}
171
+ let(:redirect_path){'/new_path'}
172
+ let(:redirect_uri){"http://example.com:80#{redirect_path}"}
173
+
174
+ before do
175
+ stub_request(:get, redirect_uri).
176
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
177
+ to_return(status: 200, body: '', headers: {})
178
+ end
179
+
180
+ context "via 301" do
181
+ before do
182
+ stub_request(:get, request_uri).
183
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
184
+ to_return(status: 301, body: '', headers: {'location' => redirect_path})
185
+ end
186
+
187
+ it "does a redirect" do
188
+ expect(HTTP).to receive(:get).once.with(request_uri).and_call_original
189
+ expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
190
+ HTTP.get(request_uri)
191
+ end
192
+ end
193
+
194
+ context "via 302" do
195
+ before do
196
+ stub_request(:get, request_uri).
197
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
198
+ to_return(status: 302, body: '', headers: {'location' => redirect_path})
199
+ end
200
+
201
+ it "does a redirect" do
202
+ expect(HTTP).to receive(:get).once.with(request_uri).and_call_original
203
+ expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
167
204
  HTTP.get(request_uri)
168
205
  end
169
206
  end
@@ -6,15 +6,12 @@ $LOAD_PATH.unshift(spec_dir) unless $LOAD_PATH.include?(spec_dir)
6
6
  require 'spec_helper'
7
7
  require 'HTTP/post'
8
8
 
9
- WebMock.enable!
10
- WebMock.disable_net_connect!(allow_localhost: true)
11
-
12
9
  describe ".post" do
13
10
 
14
11
  context "with uri-only supplied" do
15
12
  before do
16
13
  stub_request(:post, 'http://example.com/path').
17
- with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
14
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Content-Type'=>'application/x-www-form-urlencoded', 'User-Agent'=>'Ruby'}).
18
15
  to_return(status: 200, body: '', headers: {})
19
16
  end
20
17
 
@@ -61,7 +58,7 @@ describe ".post" do
61
58
 
62
59
  before do
63
60
  stub_request(:post, "http://example.com/path").
64
- with(body: {"a"=>"1", "b"=>"2"}, headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
61
+ with(body: {"a"=>"1", "b"=>"2"}, headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Content-Type'=>'application/x-www-form-urlencoded', 'User-Agent'=>'Ruby'}).
65
62
  to_return(status: 200, body: '', headers: {})
66
63
  end
67
64
 
@@ -86,7 +83,7 @@ describe ".post" do
86
83
 
87
84
  before do
88
85
  stub_request(:post, 'http://example.com/path').
89
- with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Rspec'}).
86
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Content-Type'=>'application/x-www-form-urlencoded', 'User-Agent'=>'Rspec'}).
90
87
  to_return(status: 200, body: '', headers: {})
91
88
  end
92
89
 
@@ -105,7 +102,7 @@ describe ".post" do
105
102
 
106
103
  before do
107
104
  stub_request(:post, 'https://example.com:80/path').
108
- with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
105
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Content-Type'=>'application/x-www-form-urlencoded', 'User-Agent'=>'Ruby'}).
109
106
  to_return(status: 200, body: '', headers: {})
110
107
  end
111
108
 
@@ -121,7 +118,7 @@ describe ".post" do
121
118
 
122
119
  before do
123
120
  stub_request(:post, 'http://example.com/path').
124
- with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
121
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Content-Type'=>'application/x-www-form-urlencoded', 'User-Agent'=>'Ruby'}).
125
122
  to_return(status: 200, body: '', headers: {})
126
123
  end
127
124
 
@@ -145,12 +142,12 @@ describe ".post" do
145
142
  before do
146
143
  stub_request(:post, request_uri).
147
144
  with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
148
- to_return(status: '301', body: '', headers: {'location' => redirect_uri})
145
+ to_return(status: 301, body: '', headers: {'location' => redirect_uri})
149
146
  end
150
147
 
151
148
  it "does a redirect" do
152
149
  expect(HTTP).to receive(:post).once.with(request_uri).and_call_original
153
- expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {}).and_call_original
150
+ expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
154
151
  HTTP.post(request_uri)
155
152
  end
156
153
  end
@@ -159,12 +156,52 @@ describe ".post" do
159
156
  before do
160
157
  stub_request(:post, request_uri).
161
158
  with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
162
- to_return(status: '302', body: '', headers: {'location' => redirect_uri})
159
+ to_return(status: 302, body: '', headers: {'location' => redirect_uri})
163
160
  end
164
161
 
165
162
  it "does a redirect" do
166
163
  expect(HTTP).to receive(:post).with(request_uri).and_call_original
167
- expect(HTTP).to receive(:get).with(redirect_uri, {}, {}, {}).and_call_original
164
+ expect(HTTP).to receive(:get).with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
165
+ HTTP.post(request_uri)
166
+ end
167
+ end
168
+ end
169
+
170
+ context "with path only redirection" do
171
+ let(:request_uri){'http://example.com/path'}
172
+ let(:redirect_path){'/new_path'}
173
+ let(:redirect_uri){"http://example.com:80#{redirect_path}"}
174
+
175
+ before do
176
+ stub_request(:get, redirect_uri).
177
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
178
+ to_return(status: 200, body: '', headers: {})
179
+ end
180
+
181
+ context "via 301" do
182
+ before do
183
+ stub_request(:post, request_uri).
184
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
185
+ to_return(status: 301, body: '', headers: {'location' => redirect_path})
186
+ end
187
+
188
+ it "does a redirect" do
189
+ expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
190
+ expect(HTTP).to receive(:post).once.with(request_uri).and_call_original
191
+ HTTP.post(request_uri)
192
+ end
193
+ end
194
+
195
+ context "via 302" do
196
+ before do
197
+ stub_request(:post, request_uri).
198
+ with(headers: {'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Content-Type'=>'application/x-www-form-urlencoded', 'User-Agent'=>'Ruby'}).
199
+ to_return(status: 302, body: '', headers: {'location' => redirect_path})
200
+ end
201
+
202
+ it "does a redirect" do
203
+ expect(HTTP).to receive(:get).once.with(redirect_uri, {}, {}, {use_ssl: false, verify_mode: 0})
204
+ expect(HTTP).to receive(:post).once.with(request_uri).and_call_original
168
205
  HTTP.post(request_uri)
169
206
  end
170
207
  end
@@ -4,4 +4,3 @@ lib_dir = File.expand_path(File.join(__FILE__, '..', '..', 'lib'))
4
4
  $LOAD_PATH.unshift(lib_dir) unless $LOAD_PATH.include?(lib_dir)
5
5
 
6
6
  require 'webmock/rspec'
7
- WebMock.allow_net_connect!
metadata CHANGED
@@ -1,18 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: http.rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.1
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - thoran
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-18 00:00:00.000000000 Z
11
+ date: 2017-10-07 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: HTTP is the simplest HTTP mezzanine library for Ruby. Supply a URI, some
14
- optional query arguments, some optional headers, and some other SSL or Net::HTTP
15
- options, and that's it!
14
+ optional query arguments, some optional headers, and some Net::HTTP options,
15
+ and that's it!
16
16
  email: code@thoran.com
17
17
  executables: []
18
18
  extensions: []
@@ -27,9 +27,9 @@ files:
27
27
  - lib/Hash/x_www_form_urlencode.rb
28
28
  - lib/Net/HTTP/Get/set_headers.rb
29
29
  - lib/Net/HTTP/Post/set_headers.rb
30
+ - lib/Net/HTTP/set_options.rb
30
31
  - lib/String/url_encode.rb
31
32
  - lib/URI/Generic/use_sslQ.rb
32
- - spec/HTTP.rb
33
33
  - spec/HTTP/get_spec.rb
34
34
  - spec/HTTP/post_spec.rb
35
35
  - spec/spec_helper.rb
@@ -52,7 +52,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
52
52
  version: '0'
53
53
  requirements: []
54
54
  rubyforge_project:
55
- rubygems_version: 2.4.5
55
+ rubygems_version: 2.5.2
56
56
  signing_key:
57
57
  specification_version: 4
58
58
  summary: HTTP made easy.
@@ -1,12 +0,0 @@
1
- # spec/HTTP.rb
2
-
3
- spec_dir = File.expand_path(File.join(__FILE__, '..'))
4
- $LOAD_PATH.unshift(spec_dir) unless $LOAD_PATH.include?(spec_dir)
5
-
6
- require 'spec_helper'
7
-
8
- require 'HTTP/get'
9
- require 'HTTP/post'
10
-
11
- require 'HTTP/get_spec'
12
- require 'HTTP/post_spec'