Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 471 lines (271 sloc) 20.216 kb
9887d17 @jcf Prepare for 1.6.3 release
jcf authored
1 # Changelog
2
3cb39d7 @bblimke Version 1.7.0.pre Changelog
authored
3 ## 1.7.0.pre
4
5 * Fixed Net::HTTP adapter to not break normal Net::HTTP behaviour when network connections are allowed. This fixes selenium-webdriver compatibility!!!
6
7 * Added support for em-http-request 1.0.x and em-synchrony. Thanks to [Steve Hull](https://github.com/sdhull)
8
9 * Added support for setting expectations to on a stub itself i.e.
10
11 stub = stub_request(:get, "www.example.com")
12 # ... make requests ...
13 stub.should have_been_requested
14
15 Thanks to [Aidan Feldman](https://github.com/afeld)
16
17 * Minitest support! Thanks to [Peter Higgins](https://github.com/phiggins)
18
19 * Added support for `Curb::Easy#http_post` and `Curb::Easy#http_post` with multiple arguments. Thanks to [Salvador Fuentes Jr](https://github.com/fuentesjr) and [Alex Rothenberg](https://github.com/alexrothenberg)
20
21 * Rack support. Requests can be stubbed to respond with a Rack app i.e.
22
23 class MyRackApp
24 def self.call(env)
25 [200, {}, ["Hello"]]
26 end
27 end
28
29 stub_request(:get, "www.example.com").to_rack(MyRackApp)
30
31 Thanks to [Jay Adkisson](https://github.com/jayferd)
32
33 * The error message on an unstubbed request shows a code snippet with body as a hash when it was in url encoded form. Thanks to [Alex Rothenberg](https://github.com/alexrothenberg)
34
35 * The error message on an unstubbed request shows currently registered request stubs. Thanks to [Lin Jen-Shin](https://github.com/godfat) for suggesting this feature.
36
37 * Fixed problem with matching requests with json body, when json strings have date format. Thanks to [Joakim Ekberg](https://github.com/kalasjocke) for reporting this issue.
38
39 * WebMock now attempts to require each http library before monkey patching it. Thanks to [Myron Marston](https://github.com/myronmarston) for suggesting this change.
40
41 * External requests can be disabled while allowing selected ports on selected hosts
42
43 WebMock.disable_net_connect!(:allow => "www.example.com:8080")
44 RestClient.get("www.example.com:80") # ===> Failure
45 RestClient.get("www.example.com:8080") # ===> Allowed.
46
47 Thanks to [Zach Dennis](https://github.com/zdennis)
48
49 * Fixed syntax error in README examples, showing the ways of setting request expectations. Thanks to [Nikita Fedyashev](https://github.com/nfedyashev)
50
51
ae0286a @bblimke @jcf actually did a great job maintaining WebMock!
authored
52 **Many thanks to WebMock co-maintainer [James Conroy-Finn](https://github.com/jcf) who did a great job maintaining WebMock on his own for the last couple of months.**
3cb39d7 @bblimke Version 1.7.0.pre Changelog
authored
53
a62080b @jcf Update changelog and version number
jcf authored
54 ## 1.6.4
55
56 This is a quick slip release to regenerate the gemspec. Apparently
57 jeweler inserts dependencies twice if you use the `gemspec` method in
58 your Gemfile and declare gem dependencies in your gemspec.
59
60 https://github.com/technicalpickles/jeweler/issues/154
61
62 josevalim:
63
64 > This just bit me. I just released a gem with the wrong dependencies
65 > because I have updated jeweler. This should have been opt-in,
66 > otherwise a bunch of people using jeweler are going to release gems
67 > with the wrong dependencies because you are automatically importing
68 > from the Gemfile.
69
9887d17 @jcf Prepare for 1.6.3 release
jcf authored
70 ## 1.6.3
71
72 * Update the dependency on addressable to get around an issue in v2.2.5.
73 Thanks to [Peter Higgins](https://github.com/phiggins).
74
75 * Add support for matching parameter values using a regular expression
76 as well as a string. Thanks to [Oleg M Prozorov](https://github.com/oleg).
77
78 * Fix integration with httpclient as the internal API has changed.
79 Thanks to [Frank Prößdorf](https://github.com/endor).
80
81 * Ensure Curl::Easy#content_type is always set. Thanks to [Peter
82 Higgins](https://github.com/phiggins).
83
84 * Fix bug with em-http-request adapter stubbing responses that have a
85 chunked transfer encoding. Thanks to [Myron
86 Marston](https://github.com/myronmarston).
87
88 * Fix a load of spec failures with Patron, httpclient, and specs that
89 depended on the behaviour of example.com. Thanks to [Alex
90 Grigorovich](https://github.com/grig).
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
91
e6af079 @bblimke Updated 1.6.2 changelog and credits
authored
92 ## 1.6.2
93
94 * Em-http-request adapter sets `last_effective_url` property. Thanks to [Sam Stokes](https://github.com/samstokes).
95
96 * Curb adapter supports `Curb::Easy#http_post` and `Curb::Easy#http_put` without arguments (by setting `post_body` or `put_data` beforehand). Thanks to [Eugene Bolshakov](https://github.com/eugenebolshakov)
97
f7b9c77 @bblimke Updated version 1.6.1 changelog
authored
98 ## 1.6.1
99
100 * Fixed issue with `webmock/rspec` which didn't load correctly if `rspec/core` was already required but `rspec/expectations` not.
101
7110c60 @bblimke Updated version 1.6.0 changelog
authored
102 ## 1.6.0
473b709 @bblimke Added WebMock.reset! method. WebMock.reset_webmock is now deprecated
authored
103
7110c60 @bblimke Updated version 1.6.0 changelog
authored
104 * Simplified integration with Test::Unit, RSpec and Cucumber. Now only a single file has to be required i.e.
acaab83 @bblimke Updated changelog with the latest changes in master.
authored
105
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
106 require 'webmock/test_unit'
107 require 'webmock/rspec'
108 require 'webmock/cucumber'
acaab83 @bblimke Updated changelog with the latest changes in master.
authored
109
65dd12b @bblimke Updated changelog with latest changes in master branch
authored
110 * The error message on unstubbed request now contains code snippet which can be used to stub this request. Thanks to Martyn Loughran for suggesting this feature.
111
e6925a2 @bblimke Updated changelog with the latest changes in master
authored
112 * The expectation failure message now contains a list of made requests. Thanks to Martyn Loughran for suggesting this feature.
113
86f36d2 @bblimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
114 * Added `WebMock.print_executed_requests` method which can be useful to find out what requests were made until a given point.
115
7110c60 @bblimke Updated version 1.6.0 changelog
authored
116 * em-http-request adapter is now activated by replacing EventMachine::HttpRequest constant, instead of monkeypatching the original class.
86f36d2 @bblimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
117
7110c60 @bblimke Updated version 1.6.0 changelog
authored
118 This technique is borrowed from em-http-request native mocking module. It allows switching WebMock adapter on an off, and using it interchangeably with em-http-request native mocking i.e:
86f36d2 @bblimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
119
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
120 EventMachine::WebMockHttpRequest.activate!
121 EventMachine::WebMockHttpRequest.deactivate!
86f36d2 @bblimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
122
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
123 Thanks to Martyn Loughran for suggesting this feature.
124
125 * `WebMock.reset_webmock` is deprecated in favour of new `WebMock.reset!`
7110c60 @bblimke Updated version 1.6.0 changelog
authored
126
127 * Fixed integration with Cucumber. Previously documented example didn't work with new versions of Cucumber.
72cd989 @bblimke Added WebMock.print_executed_requests method which can be useful to find...
authored
128
7110c60 @bblimke Updated version 1.6.0 changelog
authored
129 * Fixed stubbing requests with body declared as a hash. Thanks to Erik Michaels-Ober for reporting the issue.
a7cb4fa @bblimke Fixed issue with stubbing requests with request body declared as a hash,...
authored
130
7110c60 @bblimke Updated version 1.6.0 changelog
authored
131 * Fixed issue with em-http-request adapter which didn't work when :query option value was passed as a string, not a hash. Thanks to Chee Yeo for reporting the issue.
178bfd1 @bblimke em-http-request adapter now works correctly when :query option value is ...
authored
132
7110c60 @bblimke Updated version 1.6.0 changelog
authored
133 * Fixed problem with assert_requested which didn't work if used outside rspec or test/unit
473b709 @bblimke Added WebMock.reset! method. WebMock.reset_webmock is now deprecated
authored
134
7bca10a @bblimke Don't use JSON to normalize hash body in request pattern. Removed depend...
authored
135 * Removed dependency on json gem
136
079a719 @bblimke Updated changelog with version 1.5.0 changes
authored
137 ## 1.5.0
f0408f8 @bblimke Added support for dynamically evaluated raw responses recorded with `cur...
authored
138
139 * Support for dynamically evaluated raw responses recorded with `curl -is` <br/>
140 i.e.
141
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
142 `curl -is www.example.com > /tmp/www.example.com.txt`
143 stub_request(:get, "www.example.com").to_return(lambda { |request| File.new("/tmp/#{request.uri.host.to_s}.txt" }))
f0408f8 @bblimke Added support for dynamically evaluated raw responses recorded with `cur...
authored
144
079a719 @bblimke Updated changelog with version 1.5.0 changes
authored
145 * `:net_http_connect_on_start` option can be passed to `WebMock.allow_net_connect!` and `WebMock.disable_net_connect!` methods, i.e.
ffbcdb3 @bblimke Updated changelog with the latest changes in master branch
authored
146
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
147 WebMock.allow_net_connect!(:net_http_connect_on_start => true)
ffbcdb3 @bblimke Updated changelog with the latest changes in master branch
authored
148
079a719 @bblimke Updated changelog with version 1.5.0 changes
authored
149 This forces WebMock Net::HTTP adapter to always connect on `Net::HTTP.start`. Check 'Connecting on Net::HTTP.start' in README for more information.
ffbcdb3 @bblimke Updated changelog with the latest changes in master branch
authored
150
079a719 @bblimke Updated changelog with version 1.5.0 changes
authored
151 Thanks to Alastair Brunton for reporting the issue and for fix suggestions.
4e313c2 @bblimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
152
079a719 @bblimke Updated changelog with version 1.5.0 changes
authored
153 * Fixed an issue where Patron spec tried to remove system temporary directory.
154 Thanks to Hans de Graaff
4e313c2 @bblimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
155
079a719 @bblimke Updated changelog with version 1.5.0 changes
authored
156 * WebMock specs now use RSpec 2
4e313c2 @bblimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
157
079a719 @bblimke Updated changelog with version 1.5.0 changes
authored
158 * `rake spec NO_CONNECTION=true` can now be used to only run WebMock specs which do not make real network connections
4e313c2 @bblimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
159
a53f1a0 @bblimke Updated CHANGELOG with version 1.4.0 changes
authored
160 ## 1.4.0
6eb8bb5 @bblimke WebMock tries to use already loaded version of RSpec (1.x or 2.x) (previ...
authored
161
aaf774b @bblimke Added info to changelog and readme about Curb support, implemented by Pe...
authored
162 * Curb support!!! Thanks to the awesome work of Pete Higgins!
163
2328c00 @bblimke Updated Changelog with the latest changes in master
authored
164 * `include WebMock` is now deprecated to avoid method and constant name conflicts. Please `include WebMock::API` instead.
165
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
166 * `WebMock::API#request` is renamed to `WebMock::API#a_request` to prevent method name conflicts with i.e. Rails controller specs.
2328c00 @bblimke Updated Changelog with the latest changes in master
authored
167 WebMock.request is still available.
168
a53f1a0 @bblimke Updated CHANGELOG with version 1.4.0 changes
authored
169 * Deprecated `WebMock#request`, `WebMock#allow_net_connect!`, `WebMock#net_connect_allowed?`, `WebMock#registered_request?`, `WebMock#reset_callbacks`, `WebMock#after_request` instance methods. These methods are still available, but only as WebMock class methods.
9fded75 @bblimke Updated CHANGELOG with more detailed information on changes in master
authored
170
a53f1a0 @bblimke Updated CHANGELOG with version 1.4.0 changes
authored
171 * Removed `WebMock.response_for_request` and `WebMock.assertion_failure` which were only used internally and were not documented.
9fded75 @bblimke Updated CHANGELOG with more detailed information on changes in master
authored
172
c646491 @bblimke :allow_localhost => true' now permits 0.0.0.0 in addition to 127.0.0.1 a...
authored
173 * :allow_localhost => true' now permits 0.0.0.0 in addition to 127.0.0.1 and 'localhost'. Thanks to Myron Marston and Mike Gehard for suggesting this.
174
a53f1a0 @bblimke Updated CHANGELOG with version 1.4.0 changes
authored
175 * Fixed issue with both RSpec 1.x and 2.x being available.
6eb8bb5 @bblimke WebMock tries to use already loaded version of RSpec (1.x or 2.x) (previ...
authored
176
a53f1a0 @bblimke Updated CHANGELOG with version 1.4.0 changes
authored
177 WebMock now tries to use already loaded version of RSpec (1.x or 2.x). Previously it was loading RSpec 2.0 if available, even if RSpec 1.3 was already loaded.
6eb8bb5 @bblimke WebMock tries to use already loaded version of RSpec (1.x or 2.x) (previ...
authored
178
179 Thanks to Hans de Graaff for reporting this.
180
9acf181 @bblimke Updated changelog for version 1.4.0
authored
181 * Changed runtime dependency on Addressable version 2.2.2 which fixes handling of percent-escaped '+'
182
67a0819 @bblimke Version 1.3.5 changelog + updated docs
authored
183 ## 1.3.5
184
185 * External requests can be disabled while allowing selected hosts. Thanks to Charles Li and Ryan Bigg
186
187 This feature was available before only for localhost with `:allow_localhost => true`
188
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
189 WebMock.disable_net_connect!(:allow => "www.example.org")
67a0819 @bblimke Version 1.3.5 changelog + updated docs
authored
190
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
191 Net::HTTP.get('www.something.com', '/') # ===> Failure
67a0819 @bblimke Version 1.3.5 changelog + updated docs
authored
192
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
193 Net::HTTP.get('www.example.org', '/') # ===> Allowed.
67a0819 @bblimke Version 1.3.5 changelog + updated docs
authored
194
195 * Fixed Net::HTTP adapter so that it preserves the original behavior of Net::HTTP.
196
197 When making a request with a block that calls #read_body on the request,
198 Net::HTTP causes the body to be set to a Net::ReadAdapter, but WebMock was causing the body to be set to a string.
199
688e687 Version 1.3.4 changelog
Bartosz Blimke and Oliver Nightingale authored
200 ## 1.3.4
201
202 * Fixed Net::HTTP adapter to handle cases where a block with `read_body` call is passed to `request`.
203 This fixes compatibility with `open-uri`. Thanks to Mark Evans for reporting the issue.
204
db5fcf4 Version 1.3.3 changelog.
Bartosz Blimke and Ben Pickles authored
205 ## 1.3.3
206
207 * Fixed handling of multiple values for the same response header for Net::HTTP. Thanks to Myron Marston for reporting the issue.
208
27c0f65 Version 1.3.2 changelog
Bartosz Blimke and Ben Pickles authored
209 ## 1.3.2
210
211 * Fixed compatibility with EM-HTTP-Request >= 0.2.9. Thanks to Myron Marston for reporting the issue.
212
15f888e @bblimke The less hacky way to get the stream behaviour working for em-http-reque...
authored
213 ## 1.3.1
214
60fa244 @bblimke Updated changelog
authored
215 * The less hacky way to get the stream behaviour working for em-http-request. Thanks to Martyn Loughran
216
217 * Fixed issues where Net::HTTP was not accepting valid nil response body. Thanks to Muness Alrubaie
15f888e @bblimke The less hacky way to get the stream behaviour working for em-http-reque...
authored
218
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
219 ## 1.3.0
220
221 * Added support for [em-http-request](http://github.com/igrigorik/em-http-request)
222
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
223 * Matching query params using a hash
224
225 stub_http_request(:get, "www.example.com").with(:query => {"a" => ["b", "c"]})
226
227 RestClient.get("http://www.example.com/?a[]=b&a[]=c") # ===> Success
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
228
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
229 request(:get, "www.example.com").with(:query => {"a" => ["b", "c"]}).should have_been_made # ===> Success
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
230
231 * Matching request body against a hash. Body can be URL-Encoded, JSON or XML.
26cb92f Small improvements to CHANGELOG for version 1.3.0
Bartosz Blimke authored
232
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
233 (Thanks to Steve Tooke for the idea and a solution for url-encoded bodies)
234
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
235 stub_http_request(:post, "www.example.com").
236 with(:body => {:data => {:a => '1', :b => 'five'}})
237
238 RestClient.post('www.example.com', "data[a]=1&data[b]=five",
239 :content_type => 'application/x-www-form-urlencoded') # ===> Success
240
241 RestClient.post('www.example.com', '{"data":{"a":"1","b":"five"}}',
242 :content_type => 'application/json') # ===> Success
243
244 RestClient.post('www.example.com', '<data a="1" b="five" />',
245 :content_type => 'application/xml' ) # ===> Success
246
247 request(:post, "www.example.com").
248 with(:body => {:data => {:a => '1', :b => 'five'}},
249 :headers => 'Content-Type' => 'application/json').should have_been_made # ===> Success
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
250
251 * Request callbacks (Thanks to Myron Marston for all suggestions)
252
253 WebMock can now invoke callbacks for stubbed or real requests:
254
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
255 WebMock.after_request do |request_signature, response|
256 puts "Request #{request_signature} was made and #{response} was returned"
257 end
258
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
259 invoke callbacks for real requests only and except requests made with Patron client
260
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
261 WebMock.after_request(:except => [:patron], :real_requests_only => true) do |request_signature, response|
262 puts "Request #{request_signature} was made and #{response} was returned"
263 end
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
264
265 * `to_raise()` now accepts an exception instance or a string as argument in addition to an exception class
266
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
267 stub_request(:any, 'www.example.net').to_raise(StandardError.new("some error"))
268
269 stub_request(:any, 'www.example.net').to_raise("some error")
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
270
26cb92f Small improvements to CHANGELOG for version 1.3.0
Bartosz Blimke authored
271 * Matching requests based on a URI is 30% faster
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
272
273 * Fixed constant namespace issues in HTTPClient adapter. Thanks to Nathaniel Bibler for submitting a patch.
274
fd2472a Version 1.2.2 changelog
Bartosz Blimke authored
275 ## 1.2.2
276
277 * Fixed problem where ArgumentError was raised if query params were made up of an array e.g. data[]=a&data[]=b. Thanks to Steve Tooke
278
5803f31 Version bump to 1.2.1
Bartosz Blimke authored
279 ## 1.2.1
280
281 * Changed license from GPL to MIT
282
283 * Fixed gemspec file. Thanks to Razic
284
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
285 ## 1.2.0
31b3ffb Added version 1.2.0 changelog
Bartosz Blimke authored
286
287 * RSpec 2 compatibility. Thanks to Sam Phillips!
288
289 * :allow_localhost => true' now permits 127.0.0.1 as well as 'localhost'. Thanks to Mack Earnhardt
290
291 * Request URI matching in now 2x faster!
292
293
4a04017 Added 1.1.0 changelog
Bartosz Blimke authored
294 ## 1.1.0
295
ee7b3b4 Fixed spelling
Bartosz Blimke authored
296 * [VCR](http://github.com/myronmarston/vcr/) compatibility. Many thanks to Myron Marston for all suggestions.
4a04017 Added 1.1.0 changelog
Bartosz Blimke authored
297
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
298 * Support for stubbing requests and returning responses with multiple headers with the same name. i.e multiple Accept headers.
299
300 stub_http_request(:get, 'www.example.com').
301 with(:headers => {'Accept' => ['image/png', 'image/jpeg']}).
302 to_return(:body => 'abc')
303 RestClient.get('www.example.com',
304 {"Accept" => ['image/png', 'image/jpeg']}) # ===> "abc\n"
4a04017 Added 1.1.0 changelog
Bartosz Blimke authored
305
306 * When real net connections are disabled and unstubbed request is made, WebMock throws WebMock::NetConnectNotAllowedError instead of assertion error or StandardError.
307
308 * Added WebMock.version()
309
310
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
311 ## 1.0.0
312
313 * Added support for [Patron](http://toland.github.com/patron/)
314
315 * Responses dynamically evaluated from block (idea and implementation by Tom Ward)
316
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
317 stub_request(:any, 'www.example.net').
318 to_return { |request| {:body => request.body} }
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
319
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
320 RestClient.post('www.example.net', 'abc') # ===> "abc\n"
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
321
322 * Responses dynamically evaluated from lambda (idea and implementation by Tom Ward)
323
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
324 stub_request(:any, 'www.example.net').
325 to_return(lambda { |request| {:body => request.body} })
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
326
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
327 RestClient.post('www.example.net', 'abc') # ===> "abc\n"
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
328
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
329 * Response with custom status message
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
330
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
331 stub_request(:any, "www.example.com").to_return(:status => [500, "Internal Server Error"])
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
332
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
333 req = Net::HTTP::Get.new("/")
334 Net::HTTP.start("www.example.com") { |http| http.request(req) }.message # ===> "Internal Server Error"
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
335
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
336 * Raising timeout errors (suggested by Jeffrey Jones) (compatibility with Ruby 1.8.6 by Mack Earnhardt)
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
337
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
338 stub_request(:any, 'www.example.net').to_timeout
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
339
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
340 RestClient.post('www.example.net', 'abc') # ===> RestClient::RequestTimeout
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
341
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
342 * External requests can be disabled while allowing localhost (idea and implementation by Mack Earnhardt)
343
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
344 WebMock.disable_net_connect!(:allow_localhost => true)
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
345
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
346 Net::HTTP.get('www.something.com', '/') # ===> Failure
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
347
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
348 Net::HTTP.get('localhost:9887', '/') # ===> Allowed. Perhaps to Selenium?
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
349
350
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
351 ### Bug fixes
352
353 * Fixed issue where Net::HTTP adapter didn't work for requests with body responding to read (reported by Tekin Suleyman)
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
354 * Fixed issue where request stub with headers declared as nil was matching requests with non empty headers
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
355
b6c3b3b Version bump to 0.9.1
Bartosz Blimke authored
356 ## 0.9.1
357
358 * Fixed issue where response status code was not read from raw (curl -is) responses
359
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
360 ## 0.9.0
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
361
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
362 * Matching requests against provided block (by Sergio Gil)
363
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
364 stub_request(:post, "www.example.com").with { |request| request.body == "abc" }.to_return(:body => "def")
365 RestClient.post('www.example.com', 'abc') # ===> "def\n"
366 request(:post, "www.example.com").with { |req| req.body == "abc" }.should have_been_made
367 #or
368 assert_requested(:post, "www.example.com") { |req| req.body == "abc" }
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
369
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
370 * Matching request body against regular expressions (suggested by Ben Pickles)
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
371
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
372 stub_request(:post, "www.example.com").with(:body => /^.*world$/).to_return(:body => "abc")
373 RestClient.post('www.example.com', 'hello world') # ===> "abc\n"
374
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
375 * Matching request headers against regular expressions (suggested by Ben Pickles)
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
376
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
377 stub_request(:post, "www.example.com").with(:headers => {"Content-Type" => /image\/.+/}).to_return(:body => "abc")
378 RestClient.post('www.example.com', '', {'Content-Type' => 'image/png'}) # ===> "abc\n"
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
379
380 * Replaying raw responses recorded with `curl -is`
381
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
382 `curl -is www.example.com > /tmp/example_curl_-is_output.txt`
383 raw_response_file = File.new("/tmp/example_curl_-is_output.txt")
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
384
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
385 from file
386
387 stub_request(:get, "www.example.com").to_return(raw_response_file)
388
389 or string
390
391 stub_request(:get, "www.example.com").to_return(raw_response_file.read)
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
392
393 * Multiple responses for repeated requests
394
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
395 stub_request(:get, "www.example.com").to_return({:body => "abc"}, {:body => "def"})
396 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
397 Net::HTTP.get('www.example.com', '/') # ===> "def\n"
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
398
399 * Multiple responses using chained `to_return()` or `to_raise()` declarations
400
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
401 stub_request(:get, "www.example.com").
402 to_return({:body => "abc"}).then. #then() just is a syntactic sugar
403 to_return({:body => "def"}).then.
404 to_raise(MyException)
405 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
406 Net::HTTP.get('www.example.com', '/') # ===> "def\n"
407 Net::HTTP.get('www.example.com', '/') # ===> MyException raised
408
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
409 * Specifying number of times given response should be returned
410
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
411 stub_request(:get, "www.example.com").
412 to_return({:body => "abc"}).times(2).then.
413 to_return({:body => "def"})
414
415 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
416 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
417 Net::HTTP.get('www.example.com', '/') # ===> "def\n"
418
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
419 * Added support for `Net::HTTP::Post#body_stream`
420
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
421 This fixes compatibility with new versions of RestClient
422
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
423 * WebMock doesn't suppress default request headers added by http clients anymore.
424
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
425 i.e. Net::HTTP adds `'Accept'=>'*/*'` to all requests by default
426
427
428
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
429 ## 0.8.2
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
430
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
431 * Fixed issue where WebMock was not closing IO object passed as response body after reading it.
432 * Ruby 1.9.2 compat: Use `File#expand_path` for require path because "." is not be included in LOAD_PATH since Ruby 1.9.2
433
434
435 ## 0.8.1
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
436
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
437 * Fixed HTTPClient adapter compatibility with Ruby 1.8.6 (reported by Piotr Usewicz)
438 * Net:HTTP adapter now handles request body assigned as Net::HTTP::Post#body attribute (fixed by Mack Earnhardt)
439 * Fixed issue where requests were not matching stubs with Accept header set.(reported by Piotr Usewicz)
440 * Fixed compatibility with Ruby 1.9.1, 1.9.2 and JRuby 1.3.1 (reported by Diego E. “Flameeyes” Pettenò)
441 * Fixed issue with response body declared as IO object and multiple requests (reported by Niels Meersschaert)
442 * Fixed "undefined method `assertion_failure'" error (reported by Nick Plante)
443
444
445 ## 0.8.0
446
447 * Support for HTTPClient (sync and async requests)
a251cb3 @jcf Indent files correctly and remove trailing whitespace
jcf authored
448 * Support for dynamic responses. Response body and headers can be now declared as lambda.
449 (Thanks to Ivan Vega ( @ivanyv ) for suggesting this feature)
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
450 * Support for stubbing and expecting requests with empty body
451 * Executing non-stubbed request leads to failed expectation instead of error
452
453
454 ### Bug fixes
455
456 * Basic authentication now works correctly
457 * Fixed problem where WebMock didn't call a block with the response when block was provided
458 * Fixed problem where uris with single slash were not matching uris without path provided
459
460
461 ## 0.7.3
462
463 * Clarified documentation
464 * Fixed some issues with loading of Webmock classes
465 * Test::Unit and RSpec adapters have to be required separately
466
467
468 ## 0.7.2
469
470 * Added support for matching escaped and non escaped URLs
Something went wrong with that request. Please try again.