Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 656 lines (373 sloc) 27.21 kb
9887d17 James Conroy-Finn Prepare for 1.6.3 release
jcf authored
1 # Changelog
2
68ba906 Bartosz Blimke Updated Changelog and Readme with the latest changes in master
authored
3 ## Master
4
5 * Matching request body against partial hash.
6
7 stub_http_request(:post, "www.example.com").
8 with(:body => hash_including({:data => {:a => '1', :b => 'five'}}))
9
10 RestClient.post('www.example.com', "data[a]=1&data[b]=five&x=1",
11 :content_type => 'application/x-www-form-urlencoded') # ===> Success
12
13 request(:post, "www.example.com").
14 with(:body => hash_including({:data => {:a => '1', :b => 'five'}}),
15 :headers => 'Content-Type' => 'application/json').should have_been_made # ===> Success
16
17 Thanks to [Marnen Laibow-Koser](https://github.com/marnen) for help with this solution
18
19 * Matching request query params against partial hash.
20
21 stub_http_request(:get, "www.example.com").with(:query => hash_including({"a" => ["b", "c"]}))
22
23 RestClient.get("http://www.example.com/?a[]=b&a[]=c&x=1") # ===> Success
24
25 request(:get, "www.example.com").
26 with(:query => hash_including({"a" => ["b", "c"]})).should have_been_made # ===> Success
27
28 * Added support for Excon.
29
30 Thanks to [Dimitrij Denissenko](https://github.com/dim)
31
32 * Added support for setting expectations on the request stub with `assert_requested`
33
34 stub_get = stub_request(:get, "www.example.com")
35 stub_post = stub_request(:post, "www.example.com")
36
37 Net::HTTP.get('www.example.com', '/')
38
39 assert_requested(stub_get)
40 assert_not_requested(stub_post)
41
42 Thanks to [Nicolas Fouché](https://github.com/nfo)
43
44 * `WebMock.disable_net_connect!` accepts `RegExp` as `:allow` parameter
45
46 Thanks to [Frank Schumacher](https://github.com/thenoseman)
47
44de728 Bartosz Blimke Updated changelog with latest changes in master
authored
48 * Ensure multiple values for the same header can be recorded and played back
49
50 Thanks to [Myron Marston](https://github.com/myronmarston)
51
e56d313 Bartosz Blimke Updated dependency on Addressable to version >= 2.2.7 to handle nested h...
authored
52 * Updated dependency on Addressable to version >= 2.2.7 to handle nested hash query values. I.e. `?one[two][three][]=four&one[two][three][]=five`
53
68ba906 Bartosz Blimke Updated Changelog and Readme with the latest changes in master
authored
54 * Fixed compatibility with Curb >= 0.7.16 This breaks compatibility with Curb < 0.7.16
55
56 * Fix #to_rack to handle non-array response bodies.
57
58 Thanks to [Tammer Saleh](https://github.com/tsaleh)
59
60 * Added `read_timeout` accessor to StubSocket which fixes compatibility with aws-sdk
61
62 Thanks to [Lin Jen-Shin](https://github.com/godfat)
63
64 * Fix warning "instance variable @query_params not initialized"
65
66 Thanks to [Joe Van Dyk](https://github.com/joevandyk)
67
68 * Using bytesize of message instead of its length for content-length header in em-http-request adapter.
69 This fixes a problem with messages getting truncated in Ruby >= 1.9
70
71 Thanks to [Mark Abramov](https://github.com/markiz)
72
5cd5aaf Bartosz Blimke Fixed problem with body params being matched even if params were differe...
authored
73 * Fixed problem with body params being matched even if params were different.
74
75 Thanks to [Evgeniy Dolzhenko](https://github.com/dolzenko) for reporting this issue.
76
a50c583 Bartosz Blimke Upgraded version to 1.7.10
authored
77 ## 1.7.10
78
79 * Yanked 1.7.9 and rebuilt gem on 1.8.7 to deal with syck/psych incompatibilties in gemspec.
80
4ff8cf1 Bartosz Blimke Version 1.7.9 changelog
authored
81 ## 1.7.9
82
83 * Fixed support for native Typhoeus timeouts.
84
85 Thanks to [Albert Llop](https://github.com/mrsimo)
86
87 * Fixed problem with WebMock and RSpec compatibility on TeamCity servers. See [this article](http://www.coding4streetcred.com/blog/post/Issue-RubyMine-31-Webmock-162-and-%E2%80%9CSpecconfigure%E2%80%9D-curse.aspx) for more details.
88
89 Thanks to [Christopher Pickslay](https://github.com/chrispix) from [Two Bit Labs](https://github.com/twobitlabs)
90
91
18b3e7f Myron Marston 1.7.8 release.
myronmarston authored
92 ## 1.7.8
93
94 * Fix each adapter so that it calls a `stub.with` block only once per
95 request. Previously, the block would be called two or three times per
96 request [Myron Marston](https://github.com/myronmarston).
97
4ff9f1a Bartosz Blimke Version 1.7.7 - RuPy 2011 Release
authored
98 ## 1.7.7 - RuPy 2011 release
99
100 * Passing response object to a block passed to `HTTPClient#do_get_block`. This fixes `HTTPClient.get_content` failures. [issue 130](https://github.com/bblimke/webmock/pull/130)
101
102 Thanks to [Chris McGrath](https://github.com/chrismcg)
103
104 * Cleaned up ruby warnings when running WebMock code with `-w`.
105
106 Thanks to [Stephen Celis](https://github.com/stephencelis)
107
108 * Curb adapter now correctly calls on_failure for 4xx response codes.
109
110 Thanks to [Eugene Pimenov](https://github.com/libc)
111
748ff35 Bartosz Blimke Version 1.7.6
authored
112 ## 1.7.6
113
114 * Support for the HTTPClient's request_filter feature
115
116 Thanks to [Roman Shterenzon](https://github.com/romanbsd)
117
4d848df Bartosz Blimke Version 1.7.5
authored
118 ## 1.7.5
119
120 * Added support for Patron 0.4.15. This change is not backward compatible so please upgrade Patron to version >= 0.4.15 if you want to use it with WebMock.
121
122 Thanks to [Andreas Garnæs](https://github.com/andreas)
123
b6ca337 Bartosz Blimke Version 1.7.4
authored
124 ## 1.7.4
125
126 * Added support for matching EM-HTTP-Request requests with body declared as a Hash
127
128 Thanks to [David Yeu](https://github.com/daveyeu)
129
6b422e4 Bartosz Blimke Version 1.7.3
authored
130 ## 1.7.3
131
132 * Added `Get`, `Post`, `Delete`, `Put`, `Head`, `Option` constants to replaced `Net::HTTP` to make it possible to marshal objects with these constants assigned to properties. This fixed problem with `tvdb_party` gem which serializes HTTParty responses.
133
134 Thanks to [Klaus Hartl](https://github.com/carhartl) for reporting this issue.
135
045f28a Bartosz Blimke Version 1.7.2
authored
136 ## 1.7.2
137
138 * Redefined `const_get` and `constants` methods on the replaced `Net::HTTP` to return same values as original `Net::HTTP`
139
81a3563 Bartosz Blimke Version 1.7.1
authored
140 ## 1.7.1
141
142 * Redefined `const_defined?` on the replaced `Net::HTTP` so that it returns true if constant is defined on the original `Net::HTTP`. This fixes problems with `"Net::HTTP::Get".constantize`.
143
144 Thanks to [Cássio Marques](https://github.com/cassiomarques) for reporting the issue and to [Myron Marston](https://github.com/myronmarston) for help with the solution.
145
8edff05 Bartosz Blimke Version 1.7.0
authored
146 ## 1.7.0
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
147
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
148 * Fixed Net::HTTP adapter to not break normal Net::HTTP behaviour when network connections are allowed. This fixes **selenium-webdriver compatibility**!!!
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
149
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
150 * Added support for EM-HTTP-Request 1.0.x and EM-Synchrony. Thanks to [Steve Hull](https://github.com/sdhull)
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
151
152 * Added support for setting expectations to on a stub itself i.e.
153
154 stub = stub_request(:get, "www.example.com")
155 # ... make requests ...
156 stub.should have_been_requested
157
158 Thanks to [Aidan Feldman](https://github.com/afeld)
159
160 * Minitest support! Thanks to [Peter Higgins](https://github.com/phiggins)
161
21aba84 Bartosz Blimke Updated README and Changelog with inf about Typhoeus support
authored
162 * Added support for Typhoeus::Hydra
163
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
164 * 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)
165
166 * Rack support. Requests can be stubbed to respond with a Rack app i.e.
167
168 class MyRackApp
169 def self.call(env)
170 [200, {}, ["Hello"]]
171 end
172 end
173
174 stub_request(:get, "www.example.com").to_rack(MyRackApp)
175
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
176 RestClient.get("www.example.com") # ===> "Hello"
177
178
fa61e9a Bartosz Blimke Fixed formatting in changelog
authored
179 Thanks to [Jay Adkisson](https://github.com/jayferd)
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
180
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
181 * Added support for selective disabling and enabling of http lib adapters
17547a5 Bartosz Blimke Updated Changelog and README with info about enabling and disabling WebM...
authored
182
183 WebMock.disable! #disable WebMock (all adapters)
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
184 WebMock.disable!(:except => [:net_http]) #disable WebMock for all libs except Net::HTTP
17547a5 Bartosz Blimke Updated Changelog and README with info about enabling and disabling WebM...
authored
185 WebMock.enable! #enable WebMock (all adapters)
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
186 WebMock.enable!(:except => [:patron]) #enable WebMock for all libs except Patron
187
188 * The error message on an unstubbed request shows a code snippet with body as a hash when it was in url encoded form.
189
190 > RestClient.post('www.example.com', "data[a]=1&data[b]=2", :content_type => 'application/x-www-form-urlencoded')
191
192 WebMock::NetConnectNotAllowedError: Real HTTP connections are disabled....
193
194 You can stub this request with the following snippet:
195
196 stub_request(:post, "http://www.example.com/").
197 with(:body => {"data"=>{"a"=>"1", "b"=>"2"}},
198 :headers => { 'Content-Type'=>'application/x-www-form-urlencoded' }).
199 to_return(:status => 200, :body => "", :headers => {})
17547a5 Bartosz Blimke Updated Changelog and README with info about enabling and disabling WebM...
authored
200
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
201 Thanks to [Alex Rothenberg](https://github.com/alexrothenberg)
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
202
fa61e9a Bartosz Blimke Fixed formatting in changelog
authored
203 * The error message on an unstubbed request shows currently registered request stubs.
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
204
205 > stub_request(:get, "www.example.net")
206 > stub_request(:get, "www.example.org")
207 > RestClient.get("www.example.com")
208 WebMock::NetConnectNotAllowedError: Real HTTP connections are disabled....
209
210 You can stub this request with the following snippet:
211
212 stub_request(:get, "http://www.example.com/").
213 to_return(:status => 200, :body => "", :headers => {})
214
215 registered request stubs:
216
217 stub_request(:get, "http://www.example.net/")
218 stub_request(:get, "http://www.example.org/")
219
220 Thanks to [Lin Jen-Shin](https://github.com/godfat) for suggesting this feature.
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
221
222 * 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.
223
607e1e8 Bartosz Blimke Added more examples to 1.7.0.pre Changelog
authored
224 * WebMock now attempts to require each http library before monkey patching it. This is to avoid problem when http library is required after WebMock is required. Thanks to [Myron Marston](https://github.com/myronmarston) for suggesting this change.
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
225
226 * External requests can be disabled while allowing selected ports on selected hosts
227
228 WebMock.disable_net_connect!(:allow => "www.example.com:8080")
229 RestClient.get("www.example.com:80") # ===> Failure
230 RestClient.get("www.example.com:8080") # ===> Allowed.
231
fa61e9a Bartosz Blimke Fixed formatting in changelog
authored
232 Thanks to [Zach Dennis](https://github.com/zdennis)
3cb39d7 Bartosz Blimke Version 1.7.0.pre Changelog
authored
233
234 * Fixed syntax error in README examples, showing the ways of setting request expectations. Thanks to [Nikita Fedyashev](https://github.com/nfedyashev)
235
236
ae0286a Bartosz Blimke @jcf actually did a great job maintaining WebMock!
authored
237 **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 Bartosz Blimke Version 1.7.0.pre Changelog
authored
238
a62080b James Conroy-Finn Update changelog and version number
jcf authored
239 ## 1.6.4
240
241 This is a quick slip release to regenerate the gemspec. Apparently
242 jeweler inserts dependencies twice if you use the `gemspec` method in
243 your Gemfile and declare gem dependencies in your gemspec.
244
245 https://github.com/technicalpickles/jeweler/issues/154
246
247 josevalim:
248
249 > This just bit me. I just released a gem with the wrong dependencies
250 > because I have updated jeweler. This should have been opt-in,
251 > otherwise a bunch of people using jeweler are going to release gems
252 > with the wrong dependencies because you are automatically importing
253 > from the Gemfile.
254
9887d17 James Conroy-Finn Prepare for 1.6.3 release
jcf authored
255 ## 1.6.3
256
257 * Update the dependency on addressable to get around an issue in v2.2.5.
258 Thanks to [Peter Higgins](https://github.com/phiggins).
259
260 * Add support for matching parameter values using a regular expression
261 as well as a string. Thanks to [Oleg M Prozorov](https://github.com/oleg).
262
263 * Fix integration with httpclient as the internal API has changed.
264 Thanks to [Frank Prößdorf](https://github.com/endor).
265
266 * Ensure Curl::Easy#content_type is always set. Thanks to [Peter
267 Higgins](https://github.com/phiggins).
268
269 * Fix bug with em-http-request adapter stubbing responses that have a
270 chunked transfer encoding. Thanks to [Myron
271 Marston](https://github.com/myronmarston).
272
273 * Fix a load of spec failures with Patron, httpclient, and specs that
274 depended on the behaviour of example.com. Thanks to [Alex
275 Grigorovich](https://github.com/grig).
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
276
e6af079 Bartosz Blimke Updated 1.6.2 changelog and credits
authored
277 ## 1.6.2
278
279 * Em-http-request adapter sets `last_effective_url` property. Thanks to [Sam Stokes](https://github.com/samstokes).
280
281 * 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)
282
f7b9c77 Bartosz Blimke Updated version 1.6.1 changelog
authored
283 ## 1.6.1
284
285 * Fixed issue with `webmock/rspec` which didn't load correctly if `rspec/core` was already required but `rspec/expectations` not.
286
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
287 ## 1.6.0
473b709 Bartosz Blimke Added WebMock.reset! method. WebMock.reset_webmock is now deprecated
authored
288
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
289 * Simplified integration with Test::Unit, RSpec and Cucumber. Now only a single file has to be required i.e.
acaab83 Bartosz Blimke Updated changelog with the latest changes in master.
authored
290
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
291 require 'webmock/test_unit'
292 require 'webmock/rspec'
293 require 'webmock/cucumber'
acaab83 Bartosz Blimke Updated changelog with the latest changes in master.
authored
294
65dd12b Bartosz Blimke Updated changelog with latest changes in master branch
authored
295 * 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.
296
e6925a2 Bartosz Blimke Updated changelog with the latest changes in master
authored
297 * The expectation failure message now contains a list of made requests. Thanks to Martyn Loughran for suggesting this feature.
298
86f36d2 Bartosz Blimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
299 * Added `WebMock.print_executed_requests` method which can be useful to find out what requests were made until a given point.
300
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
301 * em-http-request adapter is now activated by replacing EventMachine::HttpRequest constant, instead of monkeypatching the original class.
86f36d2 Bartosz Blimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
302
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
303 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 Bartosz Blimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
304
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
305 EventMachine::WebMockHttpRequest.activate!
306 EventMachine::WebMockHttpRequest.deactivate!
86f36d2 Bartosz Blimke em-http-request adapter is activated by replacing EventMachine::HttpRequ...
authored
307
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
308 Thanks to Martyn Loughran for suggesting this feature.
309
310 * `WebMock.reset_webmock` is deprecated in favour of new `WebMock.reset!`
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
311
312 * Fixed integration with Cucumber. Previously documented example didn't work with new versions of Cucumber.
72cd989 Bartosz Blimke Added WebMock.print_executed_requests method which can be useful to find...
authored
313
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
314 * Fixed stubbing requests with body declared as a hash. Thanks to Erik Michaels-Ober for reporting the issue.
a7cb4fa Bartosz Blimke Fixed issue with stubbing requests with request body declared as a hash,...
authored
315
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
316 * 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 Bartosz Blimke em-http-request adapter now works correctly when :query option value is ...
authored
317
7110c60 Bartosz Blimke Updated version 1.6.0 changelog
authored
318 * Fixed problem with assert_requested which didn't work if used outside rspec or test/unit
473b709 Bartosz Blimke Added WebMock.reset! method. WebMock.reset_webmock is now deprecated
authored
319
7bca10a Bartosz Blimke Don't use JSON to normalize hash body in request pattern. Removed depend...
authored
320 * Removed dependency on json gem
321
079a719 Bartosz Blimke Updated changelog with version 1.5.0 changes
authored
322 ## 1.5.0
f0408f8 Bartosz Blimke Added support for dynamically evaluated raw responses recorded with `cur...
authored
323
324 * Support for dynamically evaluated raw responses recorded with `curl -is` <br/>
325 i.e.
326
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
327 `curl -is www.example.com > /tmp/www.example.com.txt`
328 stub_request(:get, "www.example.com").to_return(lambda { |request| File.new("/tmp/#{request.uri.host.to_s}.txt" }))
f0408f8 Bartosz Blimke Added support for dynamically evaluated raw responses recorded with `cur...
authored
329
079a719 Bartosz Blimke Updated changelog with version 1.5.0 changes
authored
330 * `:net_http_connect_on_start` option can be passed to `WebMock.allow_net_connect!` and `WebMock.disable_net_connect!` methods, i.e.
ffbcdb3 Bartosz Blimke Updated changelog with the latest changes in master branch
authored
331
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
332 WebMock.allow_net_connect!(:net_http_connect_on_start => true)
ffbcdb3 Bartosz Blimke Updated changelog with the latest changes in master branch
authored
333
079a719 Bartosz Blimke Updated changelog with version 1.5.0 changes
authored
334 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 Bartosz Blimke Updated changelog with the latest changes in master branch
authored
335
079a719 Bartosz Blimke Updated changelog with version 1.5.0 changes
authored
336 Thanks to Alastair Brunton for reporting the issue and for fix suggestions.
4e313c2 Bartosz Blimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
337
079a719 Bartosz Blimke Updated changelog with version 1.5.0 changes
authored
338 * Fixed an issue where Patron spec tried to remove system temporary directory.
339 Thanks to Hans de Graaff
4e313c2 Bartosz Blimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
340
079a719 Bartosz Blimke Updated changelog with version 1.5.0 changes
authored
341 * WebMock specs now use RSpec 2
4e313c2 Bartosz Blimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
342
079a719 Bartosz Blimke Updated changelog with version 1.5.0 changes
authored
343 * `rake spec NO_CONNECTION=true` can now be used to only run WebMock specs which do not make real network connections
4e313c2 Bartosz Blimke Updated CHANGELOG and README with information about net_http_connect_on_...
authored
344
a53f1a0 Bartosz Blimke Updated CHANGELOG with version 1.4.0 changes
authored
345 ## 1.4.0
6eb8bb5 Bartosz Blimke WebMock tries to use already loaded version of RSpec (1.x or 2.x) (previ...
authored
346
aaf774b Bartosz Blimke Added info to changelog and readme about Curb support, implemented by Pe...
authored
347 * Curb support!!! Thanks to the awesome work of Pete Higgins!
348
2328c00 Bartosz Blimke Updated Changelog with the latest changes in master
authored
349 * `include WebMock` is now deprecated to avoid method and constant name conflicts. Please `include WebMock::API` instead.
350
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
351 * `WebMock::API#request` is renamed to `WebMock::API#a_request` to prevent method name conflicts with i.e. Rails controller specs.
2328c00 Bartosz Blimke Updated Changelog with the latest changes in master
authored
352 WebMock.request is still available.
353
a53f1a0 Bartosz Blimke Updated CHANGELOG with version 1.4.0 changes
authored
354 * 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 Bartosz Blimke Updated CHANGELOG with more detailed information on changes in master
authored
355
a53f1a0 Bartosz Blimke Updated CHANGELOG with version 1.4.0 changes
authored
356 * Removed `WebMock.response_for_request` and `WebMock.assertion_failure` which were only used internally and were not documented.
9fded75 Bartosz Blimke Updated CHANGELOG with more detailed information on changes in master
authored
357
c646491 Bartosz Blimke :allow_localhost => true' now permits 0.0.0.0 in addition to 127.0.0.1 a...
authored
358 * :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.
359
a53f1a0 Bartosz Blimke Updated CHANGELOG with version 1.4.0 changes
authored
360 * Fixed issue with both RSpec 1.x and 2.x being available.
6eb8bb5 Bartosz Blimke WebMock tries to use already loaded version of RSpec (1.x or 2.x) (previ...
authored
361
a53f1a0 Bartosz Blimke Updated CHANGELOG with version 1.4.0 changes
authored
362 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 Bartosz Blimke WebMock tries to use already loaded version of RSpec (1.x or 2.x) (previ...
authored
363
364 Thanks to Hans de Graaff for reporting this.
365
9acf181 Bartosz Blimke Updated changelog for version 1.4.0
authored
366 * Changed runtime dependency on Addressable version 2.2.2 which fixes handling of percent-escaped '+'
367
67a0819 Bartosz Blimke Version 1.3.5 changelog + updated docs
authored
368 ## 1.3.5
369
370 * External requests can be disabled while allowing selected hosts. Thanks to Charles Li and Ryan Bigg
371
372 This feature was available before only for localhost with `:allow_localhost => true`
373
8118632 Bartosz Blimke Fixed indentation in changelog
authored
374 WebMock.disable_net_connect!(:allow => "www.example.org")
67a0819 Bartosz Blimke Version 1.3.5 changelog + updated docs
authored
375
8118632 Bartosz Blimke Fixed indentation in changelog
authored
376 Net::HTTP.get('www.something.com', '/') # ===> Failure
67a0819 Bartosz Blimke Version 1.3.5 changelog + updated docs
authored
377
8118632 Bartosz Blimke Fixed indentation in changelog
authored
378 Net::HTTP.get('www.example.org', '/') # ===> Allowed.
67a0819 Bartosz Blimke Version 1.3.5 changelog + updated docs
authored
379
380 * Fixed Net::HTTP adapter so that it preserves the original behavior of Net::HTTP.
381
382 When making a request with a block that calls #read_body on the request,
383 Net::HTTP causes the body to be set to a Net::ReadAdapter, but WebMock was causing the body to be set to a string.
384
688e687 Version 1.3.4 changelog
Bartosz Blimke and Oliver Nightingale authored
385 ## 1.3.4
386
387 * Fixed Net::HTTP adapter to handle cases where a block with `read_body` call is passed to `request`.
388 This fixes compatibility with `open-uri`. Thanks to Mark Evans for reporting the issue.
389
db5fcf4 Version 1.3.3 changelog.
Bartosz Blimke and Ben Pickles authored
390 ## 1.3.3
391
392 * Fixed handling of multiple values for the same response header for Net::HTTP. Thanks to Myron Marston for reporting the issue.
393
27c0f65 Version 1.3.2 changelog
Bartosz Blimke and Ben Pickles authored
394 ## 1.3.2
395
396 * Fixed compatibility with EM-HTTP-Request >= 0.2.9. Thanks to Myron Marston for reporting the issue.
397
15f888e Bartosz Blimke The less hacky way to get the stream behaviour working for em-http-reque...
authored
398 ## 1.3.1
399
60fa244 Bartosz Blimke Updated changelog
authored
400 * The less hacky way to get the stream behaviour working for em-http-request. Thanks to Martyn Loughran
401
402 * Fixed issues where Net::HTTP was not accepting valid nil response body. Thanks to Muness Alrubaie
15f888e Bartosz Blimke The less hacky way to get the stream behaviour working for em-http-reque...
authored
403
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
404 ## 1.3.0
405
406 * Added support for [em-http-request](http://github.com/igrigorik/em-http-request)
407
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
408 * Matching query params using a hash
409
8118632 Bartosz Blimke Fixed indentation in changelog
authored
410 stub_http_request(:get, "www.example.com").with(:query => {"a" => ["b", "c"]})
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
411
8118632 Bartosz Blimke Fixed indentation in changelog
authored
412 RestClient.get("http://www.example.com/?a[]=b&a[]=c") # ===> Success
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
413
8118632 Bartosz Blimke Fixed indentation in changelog
authored
414 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
415
416 * 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
417
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
418 (Thanks to Steve Tooke for the idea and a solution for url-encoded bodies)
419
8118632 Bartosz Blimke Fixed indentation in changelog
authored
420 stub_http_request(:post, "www.example.com").
421 with(:body => {:data => {:a => '1', :b => 'five'}})
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
422
8118632 Bartosz Blimke Fixed indentation in changelog
authored
423 RestClient.post('www.example.com', "data[a]=1&data[b]=five",
424 :content_type => 'application/x-www-form-urlencoded') # ===> Success
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
425
8118632 Bartosz Blimke Fixed indentation in changelog
authored
426 RestClient.post('www.example.com', '{"data":{"a":"1","b":"five"}}',
427 :content_type => 'application/json') # ===> Success
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
428
8118632 Bartosz Blimke Fixed indentation in changelog
authored
429 RestClient.post('www.example.com', '<data a="1" b="five" />',
430 :content_type => 'application/xml' ) # ===> Success
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
431
8118632 Bartosz Blimke Fixed indentation in changelog
authored
432 request(:post, "www.example.com").
b2f1a0c Bartosz Blimke Added part of code in changelog, which was removed by mistake
authored
433 with(:body => {:data => {:a => '1', :b => 'five'}},
434 :headers => 'Content-Type' => 'application/json').should have_been_made # ===> Success
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
435
436 * Request callbacks (Thanks to Myron Marston for all suggestions)
437
438 WebMock can now invoke callbacks for stubbed or real requests:
439
8118632 Bartosz Blimke Fixed indentation in changelog
authored
440 WebMock.after_request do |request_signature, response|
441 puts "Request #{request_signature} was made and #{response} was returned"
442 end
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
443
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
444 invoke callbacks for real requests only and except requests made with Patron client
445
8118632 Bartosz Blimke Fixed indentation in changelog
authored
446 WebMock.after_request(:except => [:patron], :real_requests_only => true) do |request_signature, response|
447 puts "Request #{request_signature} was made and #{response} was returned"
448 end
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
449
450 * `to_raise()` now accepts an exception instance or a string as argument in addition to an exception class
451
8118632 Bartosz Blimke Fixed indentation in changelog
authored
452 stub_request(:any, 'www.example.net').to_raise(StandardError.new("some error"))
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
453
8118632 Bartosz Blimke Fixed indentation in changelog
authored
454 stub_request(:any, 'www.example.net').to_raise("some error")
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
455
26cb92f Small improvements to CHANGELOG for version 1.3.0
Bartosz Blimke authored
456 * Matching requests based on a URI is 30% faster
354af66 Updated CHANGELOG width version 1.3.0 changes
Bartosz Blimke authored
457
458 * Fixed constant namespace issues in HTTPClient adapter. Thanks to Nathaniel Bibler for submitting a patch.
459
fd2472a Version 1.2.2 changelog
Bartosz Blimke authored
460 ## 1.2.2
461
462 * 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
463
5803f31 Version bump to 1.2.1
Bartosz Blimke authored
464 ## 1.2.1
465
466 * Changed license from GPL to MIT
467
468 * Fixed gemspec file. Thanks to Razic
469
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
470 ## 1.2.0
31b3ffb Added version 1.2.0 changelog
Bartosz Blimke authored
471
472 * RSpec 2 compatibility. Thanks to Sam Phillips!
473
474 * :allow_localhost => true' now permits 127.0.0.1 as well as 'localhost'. Thanks to Mack Earnhardt
475
476 * Request URI matching in now 2x faster!
477
478
4a04017 Added 1.1.0 changelog
Bartosz Blimke authored
479 ## 1.1.0
480
ee7b3b4 Fixed spelling
Bartosz Blimke authored
481 * [VCR](http://github.com/myronmarston/vcr/) compatibility. Many thanks to Myron Marston for all suggestions.
4a04017 Added 1.1.0 changelog
Bartosz Blimke authored
482
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
483 * Support for stubbing requests and returning responses with multiple headers with the same name. i.e multiple Accept headers.
484
485 stub_http_request(:get, 'www.example.com').
486 with(:headers => {'Accept' => ['image/png', 'image/jpeg']}).
487 to_return(:body => 'abc')
488 RestClient.get('www.example.com',
489 {"Accept" => ['image/png', 'image/jpeg']}) # ===> "abc\n"
4a04017 Added 1.1.0 changelog
Bartosz Blimke authored
490
491 * When real net connections are disabled and unstubbed request is made, WebMock throws WebMock::NetConnectNotAllowedError instead of assertion error or StandardError.
492
493 * Added WebMock.version()
494
495
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
496 ## 1.0.0
497
498 * Added support for [Patron](http://toland.github.com/patron/)
499
500 * Responses dynamically evaluated from block (idea and implementation by Tom Ward)
501
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
502 stub_request(:any, 'www.example.net').
503 to_return { |request| {:body => request.body} }
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
504
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
505 RestClient.post('www.example.net', 'abc') # ===> "abc\n"
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
506
507 * Responses dynamically evaluated from lambda (idea and implementation by Tom Ward)
508
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
509 stub_request(:any, 'www.example.net').
510 to_return(lambda { |request| {:body => request.body} })
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
511
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
512 RestClient.post('www.example.net', 'abc') # ===> "abc\n"
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
513
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
514 * Response with custom status message
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
515
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
516 stub_request(:any, "www.example.com").to_return(:status => [500, "Internal Server Error"])
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
517
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
518 req = Net::HTTP::Get.new("/")
519 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
520
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
521 * 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
522
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
523 stub_request(:any, 'www.example.net').to_timeout
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
524
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
525 RestClient.post('www.example.net', 'abc') # ===> RestClient::RequestTimeout
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
526
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
527 * External requests can be disabled while allowing localhost (idea and implementation by Mack Earnhardt)
528
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
529 WebMock.disable_net_connect!(:allow_localhost => true)
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
530
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
531 Net::HTTP.get('www.something.com', '/') # ===> Failure
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
532
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
533 Net::HTTP.get('localhost:9887', '/') # ===> Allowed. Perhaps to Selenium?
c3c92ba Added information about allowing localhost to version 1.0.0 changelog
Bartosz Blimke authored
534
535
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
536 ### Bug fixes
537
538 * 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
539 * 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
540
b6c3b3b Version bump to 0.9.1
Bartosz Blimke authored
541 ## 0.9.1
542
543 * Fixed issue where response status code was not read from raw (curl -is) responses
544
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
545 ## 0.9.0
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
546
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
547 * Matching requests against provided block (by Sergio Gil)
548
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
549 stub_request(:post, "www.example.com").with { |request| request.body == "abc" }.to_return(:body => "def")
550 RestClient.post('www.example.com', 'abc') # ===> "def\n"
551 request(:post, "www.example.com").with { |req| req.body == "abc" }.should have_been_made
552 #or
553 assert_requested(:post, "www.example.com") { |req| req.body == "abc" }
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
554
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
555 * Matching request body against regular expressions (suggested by Ben Pickles)
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
556
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
557 stub_request(:post, "www.example.com").with(:body => /^.*world$/).to_return(:body => "abc")
558 RestClient.post('www.example.com', 'hello world') # ===> "abc\n"
559
66519c1 Updated changelog with 1.0.0 changes
Bartosz Blimke authored
560 * Matching request headers against regular expressions (suggested by Ben Pickles)
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
561
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
562 stub_request(:post, "www.example.com").with(:headers => {"Content-Type" => /image\/.+/}).to_return(:body => "abc")
563 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
564
565 * Replaying raw responses recorded with `curl -is`
566
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
567 `curl -is www.example.com > /tmp/example_curl_-is_output.txt`
568 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
569
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
570 from file
571
572 stub_request(:get, "www.example.com").to_return(raw_response_file)
573
574 or string
575
576 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
577
578 * Multiple responses for repeated requests
579
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
580 stub_request(:get, "www.example.com").to_return({:body => "abc"}, {:body => "def"})
581 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
582 Net::HTTP.get('www.example.com', '/') # ===> "def\n"
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
583
584 * Multiple responses using chained `to_return()` or `to_raise()` declarations
585
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
586 stub_request(:get, "www.example.com").
587 to_return({:body => "abc"}).then. #then() just is a syntactic sugar
588 to_return({:body => "def"}).then.
589 to_raise(MyException)
590 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
591 Net::HTTP.get('www.example.com', '/') # ===> "def\n"
592 Net::HTTP.get('www.example.com', '/') # ===> MyException raised
593
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
594 * Specifying number of times given response should be returned
595
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
596 stub_request(:get, "www.example.com").
597 to_return({:body => "abc"}).times(2).then.
598 to_return({:body => "def"})
599
600 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
601 Net::HTTP.get('www.example.com', '/') # ===> "abc\n"
602 Net::HTTP.get('www.example.com', '/') # ===> "def\n"
603
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
604 * Added support for `Net::HTTP::Post#body_stream`
605
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
606 This fixes compatibility with new versions of RestClient
607
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
608 * WebMock doesn't suppress default request headers added by http clients anymore.
609
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
610 i.e. Net::HTTP adds `'Accept'=>'*/*'` to all requests by default
611
612
613
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
614 ## 0.8.2
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
615
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
616 * Fixed issue where WebMock was not closing IO object passed as response body after reading it.
617 * 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
618
619
620 ## 0.8.1
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
621
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
622 * Fixed HTTPClient adapter compatibility with Ruby 1.8.6 (reported by Piotr Usewicz)
623 * Net:HTTP adapter now handles request body assigned as Net::HTTP::Post#body attribute (fixed by Mack Earnhardt)
624 * Fixed issue where requests were not matching stubs with Accept header set.(reported by Piotr Usewicz)
625 * Fixed compatibility with Ruby 1.9.1, 1.9.2 and JRuby 1.3.1 (reported by Diego E. “Flameeyes” Pettenò)
626 * Fixed issue with response body declared as IO object and multiple requests (reported by Niels Meersschaert)
627 * Fixed "undefined method `assertion_failure'" error (reported by Nick Plante)
628
629
630 ## 0.8.0
631
632 * Support for HTTPClient (sync and async requests)
a251cb3 James Conroy-Finn Indent files correctly and remove trailing whitespace
jcf authored
633 * Support for dynamic responses. Response body and headers can be now declared as lambda.
634 (Thanks to Ivan Vega ( @ivanyv ) for suggesting this feature)
5313e02 Added version 0.9.0 features to CHANGELOG and README
Bartosz Blimke authored
635 * Support for stubbing and expecting requests with empty body
636 * Executing non-stubbed request leads to failed expectation instead of error
637
638
639 ### Bug fixes
640
641 * Basic authentication now works correctly
642 * Fixed problem where WebMock didn't call a block with the response when block was provided
643 * Fixed problem where uris with single slash were not matching uris without path provided
644
645
646 ## 0.7.3
647
648 * Clarified documentation
649 * Fixed some issues with loading of Webmock classes
650 * Test::Unit and RSpec adapters have to be required separately
651
652
653 ## 0.7.2
654
655 * Added support for matching escaped and non escaped URLs
Something went wrong with that request. Please try again.