webmock 2.0.3 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/Gemfile +2 -7
  4. data/README.md +54 -53
  5. data/Rakefile +1 -1
  6. data/lib/webmock/callback_registry.rb +1 -1
  7. data/lib/webmock/http_lib_adapters/curb_adapter.rb +68 -6
  8. data/lib/webmock/http_lib_adapters/em_http_request_adapter.rb +4 -4
  9. data/lib/webmock/http_lib_adapters/excon_adapter.rb +9 -9
  10. data/lib/webmock/http_lib_adapters/http_rb/request.rb +2 -2
  11. data/lib/webmock/http_lib_adapters/http_rb/response.rb +5 -5
  12. data/lib/webmock/http_lib_adapters/http_rb/webmock.rb +3 -3
  13. data/lib/webmock/http_lib_adapters/httpclient_adapter.rb +5 -5
  14. data/lib/webmock/http_lib_adapters/manticore_adapter.rb +7 -7
  15. data/lib/webmock/http_lib_adapters/net_http.rb +3 -3
  16. data/lib/webmock/http_lib_adapters/patron_adapter.rb +4 -4
  17. data/lib/webmock/http_lib_adapters/typhoeus_hydra_adapter.rb +14 -14
  18. data/lib/webmock/matchers/hash_including_matcher.rb +1 -1
  19. data/lib/webmock/rack_response.rb +3 -3
  20. data/lib/webmock/request_pattern.rb +8 -8
  21. data/lib/webmock/request_stub.rb +5 -5
  22. data/lib/webmock/util/uri.rb +2 -2
  23. data/lib/webmock/version.rb +1 -1
  24. data/minitest/webmock_spec.rb +3 -3
  25. data/spec/acceptance/curb/curb_spec.rb +64 -47
  26. data/spec/acceptance/curb/curb_spec_helper.rb +4 -4
  27. data/spec/acceptance/em_http_request/em_http_request_spec.rb +32 -32
  28. data/spec/acceptance/em_http_request/em_http_request_spec_helper.rb +9 -9
  29. data/spec/acceptance/excon/excon_spec.rb +14 -14
  30. data/spec/acceptance/excon/excon_spec_helper.rb +6 -6
  31. data/spec/acceptance/http_rb/http_rb_spec.rb +1 -1
  32. data/spec/acceptance/http_rb/http_rb_spec_helper.rb +7 -7
  33. data/spec/acceptance/httpclient/httpclient_spec.rb +20 -20
  34. data/spec/acceptance/httpclient/httpclient_spec_helper.rb +5 -5
  35. data/spec/acceptance/manticore/manticore_spec.rb +11 -11
  36. data/spec/acceptance/manticore/manticore_spec_helper.rb +3 -3
  37. data/spec/acceptance/net_http/net_http_shared.rb +4 -4
  38. data/spec/acceptance/net_http/net_http_spec.rb +25 -25
  39. data/spec/acceptance/net_http/net_http_spec_helper.rb +4 -4
  40. data/spec/acceptance/net_http/real_net_http_spec.rb +1 -1
  41. data/spec/acceptance/patron/patron_spec.rb +10 -10
  42. data/spec/acceptance/patron/patron_spec_helper.rb +5 -5
  43. data/spec/acceptance/shared/allowing_and_disabling_net_connect.rb +36 -36
  44. data/spec/acceptance/shared/callbacks.rb +11 -11
  45. data/spec/acceptance/shared/complex_cross_concern_behaviors.rb +5 -5
  46. data/spec/acceptance/shared/enabling_and_disabling_webmock.rb +4 -4
  47. data/spec/acceptance/shared/precedence_of_stubs.rb +4 -4
  48. data/spec/acceptance/shared/request_expectations.rb +90 -90
  49. data/spec/acceptance/shared/returning_declared_responses.rb +49 -49
  50. data/spec/acceptance/shared/stubbing_requests.rb +78 -78
  51. data/spec/acceptance/typhoeus/typhoeus_hydra_spec.rb +11 -11
  52. data/spec/acceptance/typhoeus/typhoeus_hydra_spec_helper.rb +8 -8
  53. data/spec/spec_helper.rb +6 -3
  54. data/spec/support/webmock_server.rb +1 -1
  55. data/spec/unit/api_spec.rb +2 -2
  56. data/spec/unit/errors_spec.rb +3 -3
  57. data/spec/unit/matchers/hash_including_matcher_spec.rb +16 -16
  58. data/spec/unit/rack_response_spec.rb +2 -2
  59. data/spec/unit/request_body_diff_spec.rb +1 -1
  60. data/spec/unit/request_execution_verifier_spec.rb +1 -1
  61. data/spec/unit/request_pattern_spec.rb +115 -115
  62. data/spec/unit/request_signature_snippet_spec.rb +2 -2
  63. data/spec/unit/request_signature_spec.rb +16 -16
  64. data/spec/unit/request_stub_spec.rb +20 -20
  65. data/spec/unit/response_spec.rb +28 -28
  66. data/spec/unit/stub_registry_spec.rb +10 -10
  67. data/spec/unit/stub_request_snippet_spec.rb +6 -6
  68. data/spec/unit/util/hash_keys_stringifier_spec.rb +4 -4
  69. data/spec/unit/util/query_mapper_spec.rb +2 -2
  70. data/spec/unit/util/uri_spec.rb +1 -1
  71. data/test/http_request.rb +3 -3
  72. data/test/shared_test.rb +6 -6
  73. data/webmock.gemspec +4 -2
  74. metadata +32 -4
@@ -2,7 +2,7 @@ class MyException < StandardError; end;
2
2
 
3
3
  class Responder
4
4
  def call(request)
5
- {:body => request.body}
5
+ {body: request.body}
6
6
  end
7
7
  end
8
8
 
@@ -30,7 +30,7 @@ shared_context "declared responses" do |*adapter_info|
30
30
  end
31
31
 
32
32
  it "should raise exception after returning declared successful response first" do
33
- stub_request(:get, "www.example.com").to_return(:body => "abc").then.to_raise(MyException)
33
+ stub_request(:get, "www.example.com").to_return(body: "abc").then.to_raise(MyException)
34
34
  expect(http_request(:get, "http://www.example.com/").body).to eq("abc")
35
35
  expect {
36
36
  http_request(:get, "http://www.example.com/")
@@ -47,7 +47,7 @@ shared_context "declared responses" do |*adapter_info|
47
47
  end
48
48
 
49
49
  it "should timeout after returning declared successful response" do
50
- stub_request(:get, "www.example.com").to_return(:body => "abc").then.to_timeout
50
+ stub_request(:get, "www.example.com").to_return(body: "abc").then.to_timeout
51
51
  expect(http_request(:get, "http://www.example.com/").body).to eq("abc")
52
52
  expect {
53
53
  http_request(:get, "http://www.example.com/")
@@ -57,29 +57,29 @@ shared_context "declared responses" do |*adapter_info|
57
57
 
58
58
  describe "when request stub declares that request should return a response" do
59
59
  it "should return response with declared body" do
60
- stub_request(:get, "www.example.com").to_return(:body => "abc")
60
+ stub_request(:get, "www.example.com").to_return(body: "abc")
61
61
  expect(http_request(:get, "http://www.example.com/").body).to eq("abc")
62
62
  end
63
63
 
64
64
  it "should return response with declared headers" do
65
- stub_request(:get, "www.example.com").to_return(:headers => SAMPLE_HEADERS)
65
+ stub_request(:get, "www.example.com").to_return(headers: SAMPLE_HEADERS)
66
66
  response = http_request(:get, "http://www.example.com/")
67
67
  expect(response.headers["Content-Length"]).to eq("8888")
68
68
  end
69
69
 
70
70
  it "should return response with declared headers even if there are multiple headers with the same key" do
71
- stub_request(:get, "www.example.com").to_return(:headers => {"a" => ["b", "c"]})
71
+ stub_request(:get, "www.example.com").to_return(headers: {"a" => ["b", "c"]})
72
72
  response = http_request(:get, "http://www.example.com/")
73
73
  expect(response.headers["A"]).to eq("b, c")
74
74
  end
75
75
 
76
76
  it "should return response with declared status code" do
77
- stub_request(:get, "www.example.com").to_return(:status => 500)
77
+ stub_request(:get, "www.example.com").to_return(status: 500)
78
78
  expect(http_request(:get, "http://www.example.com/").status).to eq("500")
79
79
  end
80
80
 
81
- it "should return response with declared status message", :unless => (adapter_info.include?(:no_status_message)) do
82
- stub_request(:get, "www.example.com").to_return(:status => [500, "Internal Server Error"])
81
+ it "should return response with declared status message", unless: (adapter_info.include?(:no_status_message)) do
82
+ stub_request(:get, "www.example.com").to_return(status: [500, "Internal Server Error"])
83
83
  response = http_request(:get, "http://www.example.com/")
84
84
  expect(response.message).to eq("Internal Server Error")
85
85
  end
@@ -89,7 +89,7 @@ shared_context "declared responses" do |*adapter_info|
89
89
  expect(http_request(:get, "http://www.example.com/").status).to eq("200")
90
90
  end
91
91
 
92
- it "should return default response with empty message if response was not declared", :unless => (adapter_info.include?(:no_status_message)) do
92
+ it "should return default response with empty message if response was not declared", unless: (adapter_info.include?(:no_status_message)) do
93
93
  stub_request(:get, "www.example.com")
94
94
  response = http_request(:get, "http://www.example.com/")
95
95
  expect(response.message).to eq("")
@@ -97,68 +97,68 @@ shared_context "declared responses" do |*adapter_info|
97
97
 
98
98
  describe "when response body was declared as IO" do
99
99
  it "should return response body" do
100
- stub_request(:get, "www.example.com").to_return(:body => File.new(__FILE__))
100
+ stub_request(:get, "www.example.com").to_return(body: File.new(__FILE__))
101
101
  expect(http_request(:get, "http://www.example.com/").body).to eq(File.read(__FILE__))
102
102
  end
103
103
 
104
104
  it "should return response body if requested many times" do
105
- stub_request(:get, "www.example.com").to_return(:body => File.new(__FILE__))
105
+ stub_request(:get, "www.example.com").to_return(body: File.new(__FILE__))
106
106
  2.times do
107
107
  expect(http_request(:get, "http://www.example.com/").body).to eq(File.read(__FILE__))
108
108
  end
109
109
  end
110
110
 
111
111
  it "should close IO after request" do
112
- stub_request(:get, "www.example.com").to_return(:body => @file = File.new(__FILE__))
112
+ stub_request(:get, "www.example.com").to_return(body: @file = File.new(__FILE__))
113
113
  expect(@file).to be_closed
114
114
  end
115
115
  end
116
116
 
117
117
  describe "when response parts were declared as lambdas" do
118
118
  it "should return evaluated response body" do
119
- stub_request(:post, "www.example.com").to_return(:body => lambda { |request| request.body })
120
- expect(http_request(:post, "http://www.example.com/", :body => "echo").body).to eq("echo")
119
+ stub_request(:post, "www.example.com").to_return(body: lambda { |request| request.body })
120
+ expect(http_request(:post, "http://www.example.com/", body: "echo").body).to eq("echo")
121
121
  end
122
122
 
123
123
  it "should return evaluated response headers" do
124
- stub_request(:post, "www.example.com").to_return(:headers => lambda { |request| request.headers })
125
- expect(http_request(:post, "http://www.example.com/", :body => "abc", :headers => {'A' => 'B'}).headers['A']).to eq('B')
126
- expect(http_request(:post, "http://www.example.com/", :body => "abc", :headers => {'A' => 'C'}).headers['A']).to eq('C')
124
+ stub_request(:post, "www.example.com").to_return(headers: lambda { |request| request.headers })
125
+ expect(http_request(:post, "http://www.example.com/", body: "abc", headers: {'A' => 'B'}).headers['A']).to eq('B')
126
+ expect(http_request(:post, "http://www.example.com/", body: "abc", headers: {'A' => 'C'}).headers['A']).to eq('C')
127
127
  end
128
128
 
129
129
  it "should evaluate response body for each request" do
130
- stub_request(:post, "www.example.com").to_return(:body => lambda { |request| request.body })
131
- expect(http_request(:post, "http://www.example.com/", :body => "echo").body).to eq("echo")
132
- expect(http_request(:post, "http://www.example.com/", :body => "foxtrot").body).to eq("foxtrot")
130
+ stub_request(:post, "www.example.com").to_return(body: lambda { |request| request.body })
131
+ expect(http_request(:post, "http://www.example.com/", body: "echo").body).to eq("echo")
132
+ expect(http_request(:post, "http://www.example.com/", body: "foxtrot").body).to eq("foxtrot")
133
133
  end
134
134
  end
135
135
 
136
136
  describe "when response was declared as lambda" do
137
137
  it "should return evaluated response body" do
138
138
  stub_request(:post, "www.example.com").to_return(lambda {|request|
139
- {:body => request.body}
139
+ {body: request.body}
140
140
  })
141
- expect(http_request(:post, "http://www.example.com/", :body => "echo").body).to eq("echo")
142
- expect(http_request(:post, "http://www.example.com/", :body => "foxtrot").body).to eq("foxtrot")
141
+ expect(http_request(:post, "http://www.example.com/", body: "echo").body).to eq("echo")
142
+ expect(http_request(:post, "http://www.example.com/", body: "foxtrot").body).to eq("foxtrot")
143
143
  end
144
144
 
145
145
  it "should return evaluated response headers" do
146
146
  stub_request(:get, "www.example.com").to_return(lambda { |request|
147
- {:headers => request.headers}
147
+ {headers: request.headers}
148
148
  })
149
- expect(http_request(:get, "http://www.example.com/", :headers => {'A' => 'B'}).headers['A']).to eq('B')
149
+ expect(http_request(:get, "http://www.example.com/", headers: {'A' => 'B'}).headers['A']).to eq('B')
150
150
  end
151
151
 
152
152
  it "should return dynamic response declared as a block" do
153
153
  stub_request(:post, "www.example.com").to_return do |request|
154
- {:body => request.body}
154
+ {body: request.body}
155
155
  end
156
- expect(http_request(:post, "http://www.example.com/", :body => "echo").body).to eq("echo")
156
+ expect(http_request(:post, "http://www.example.com/", body: "echo").body).to eq("echo")
157
157
  end
158
158
 
159
159
  it "should return dynamic response declared as an object responding to call" do
160
160
  stub_request(:post, "www.example.com").to_return(Responder.new)
161
- expect(http_request(:post, "http://www.example.com/", :body => "echo").body).to eq("echo")
161
+ expect(http_request(:post, "http://www.example.com/", body: "echo").body).to eq("echo")
162
162
  end
163
163
  end
164
164
 
@@ -188,7 +188,7 @@ shared_context "declared responses" do |*adapter_info|
188
188
  expect(@response.status).to eq("202")
189
189
  end
190
190
 
191
- it "should return recorded status message", :unless => (adapter_info.include?(:no_status_message)) do
191
+ it "should return recorded status message", unless: (adapter_info.include?(:no_status_message)) do
192
192
  expect(@response.message).to eq("OK")
193
193
  end
194
194
 
@@ -222,7 +222,7 @@ shared_context "declared responses" do |*adapter_info|
222
222
  expect(@response.status).to eq("202")
223
223
  end
224
224
 
225
- it "should return recorded status message", :unless => (adapter_info.include?(:no_status_message)) do
225
+ it "should return recorded status message", unless: (adapter_info.include?(:no_status_message)) do
226
226
  expect(@response.message).to eq("OK")
227
227
  end
228
228
  end
@@ -248,7 +248,7 @@ shared_context "declared responses" do |*adapter_info|
248
248
  describe "when response is declared as an Rack app" do
249
249
  it "should return response returned by the rack app" do
250
250
  stub_request(:any, "http://www.example.com/greet").to_rack(MyRackApp)
251
- expect(http_request(:post, 'http://www.example.com/greet', :body => 'name=Jimmy').body).to eq('Good to meet you, Jimmy!')
251
+ expect(http_request(:post, 'http://www.example.com/greet', body: 'name=Jimmy').body).to eq('Good to meet you, Jimmy!')
252
252
  end
253
253
 
254
254
  it "should pass along the port number to the rack app" do
@@ -265,28 +265,28 @@ shared_context "declared responses" do |*adapter_info|
265
265
  "Content-Type" => "application/json"
266
266
  }
267
267
 
268
- http_request(:get, url, :headers => headers)
269
- expect(WebMock).to have_requested(:get, url).with(:headers => headers)
268
+ http_request(:get, url, headers: headers)
269
+ expect(WebMock).to have_requested(:get, url).with(headers: headers)
270
270
  end
271
271
  end
272
272
 
273
273
  describe "when sequences of responses are declared" do
274
274
  it "should return responses one by one if declared in array" do
275
- stub_request(:get, "www.example.com").to_return([ {:body => "1"}, {:body => "2"}, {:body => "3"} ])
275
+ stub_request(:get, "www.example.com").to_return([ {body: "1"}, {body: "2"}, {body: "3"} ])
276
276
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
277
277
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
278
278
  expect(http_request(:get, "http://www.example.com/").body).to eq("3")
279
279
  end
280
280
 
281
281
  it "should repeat returning last declared response from a sequence after all responses were returned" do
282
- stub_request(:get, "www.example.com").to_return([ {:body => "1"}, {:body => "2"} ])
282
+ stub_request(:get, "www.example.com").to_return([ {body: "1"}, {body: "2"} ])
283
283
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
284
284
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
285
285
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
286
286
  end
287
287
 
288
288
  it "should return responses one by one if declared as comma separated params" do
289
- stub_request(:get, "www.example.com").to_return({:body => "1"}, {:body => "2"}, {:body => "3"})
289
+ stub_request(:get, "www.example.com").to_return({body: "1"}, {body: "2"}, {body: "3"})
290
290
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
291
291
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
292
292
  expect(http_request(:get, "http://www.example.com/").body).to eq("3")
@@ -294,17 +294,17 @@ shared_context "declared responses" do |*adapter_info|
294
294
 
295
295
  it "should return responses one by one if declared with several to_return invokations" do
296
296
  stub_request(:get, "www.example.com").
297
- to_return({:body => "1"}).
298
- to_return({:body => "2"}).
299
- to_return({:body => "3"})
297
+ to_return({body: "1"}).
298
+ to_return({body: "2"}).
299
+ to_return({body: "3"})
300
300
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
301
301
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
302
302
  expect(http_request(:get, "http://www.example.com/").body).to eq("3")
303
303
  end
304
304
 
305
305
  it "should return responses one by one if declared with to_return invocations separated with then syntactic sugar" do
306
- stub_request(:get, "www.example.com").to_return({:body => "1"}).then.
307
- to_return({:body => "2"}).then.to_return({:body => "3"})
306
+ stub_request(:get, "www.example.com").to_return({body: "1"}).then.
307
+ to_return({body: "2"}).then.to_return({body: "3"})
308
308
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
309
309
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
310
310
  expect(http_request(:get, "http://www.example.com/").body).to eq("3")
@@ -315,8 +315,8 @@ shared_context "declared responses" do |*adapter_info|
315
315
  describe "when responses are declared to return more than once" do
316
316
  it "should repeat one response declared number of times" do
317
317
  stub_request(:get, "www.example.com").
318
- to_return({:body => "1"}).times(2).
319
- to_return({:body => "2"})
318
+ to_return({body: "1"}).times(2).
319
+ to_return({body: "2"})
320
320
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
321
321
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
322
322
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
@@ -325,8 +325,8 @@ shared_context "declared responses" do |*adapter_info|
325
325
 
326
326
  it "should repeat sequence of response declared number of times" do
327
327
  stub_request(:get, "www.example.com").
328
- to_return({:body => "1"}, {:body => "2"}).times(2).
329
- to_return({:body => "3"})
328
+ to_return({body: "1"}, {body: "2"}).times(2).
329
+ to_return({body: "3"})
330
330
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
331
331
  expect(http_request(:get, "http://www.example.com/").body).to eq("2")
332
332
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
@@ -337,7 +337,7 @@ shared_context "declared responses" do |*adapter_info|
337
337
 
338
338
  it "should repeat infinitely last response even if number of declared times is lower" do
339
339
  stub_request(:get, "www.example.com").
340
- to_return({:body => "1"}).times(2)
340
+ to_return({body: "1"}).times(2)
341
341
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
342
342
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
343
343
  expect(http_request(:get, "http://www.example.com/").body).to eq("1")
@@ -355,7 +355,7 @@ shared_context "declared responses" do |*adapter_info|
355
355
  it "should repeat raising exception declared number of times" do
356
356
  stub_request(:get, "www.example.com").
357
357
  to_raise(MyException).times(2).
358
- to_return({:body => "2"})
358
+ to_return({body: "2"})
359
359
  expect {
360
360
  http_request(:get, "http://www.example.com/")
361
361
  }.to raise_error(MyException, "Exception from WebMock")
@@ -368,7 +368,7 @@ shared_context "declared responses" do |*adapter_info|
368
368
  it "should repeat raising sequence of exceptions declared number of times" do
369
369
  stub_request(:get, "www.example.com").
370
370
  to_raise(MyException, ArgumentError).times(2).
371
- to_return({:body => "2"})
371
+ to_return({body: "2"})
372
372
  expect {
373
373
  http_request(:get, "http://www.example.com/")
374
374
  }.to raise_error(MyException, "Exception from WebMock")
@@ -4,29 +4,29 @@ shared_examples_for "stubbing requests" do |*adapter_info|
4
4
  describe "when requests are stubbed" do
5
5
  describe "based on uri" do
6
6
  it "should return stubbed response even if request have escaped parameters" do
7
- stub_request(:get, "www.example.com/hello+/?#{NOT_ESCAPED_PARAMS}").to_return(:body => "abc")
7
+ stub_request(:get, "www.example.com/hello+/?#{NOT_ESCAPED_PARAMS}").to_return(body: "abc")
8
8
  expect(http_request(:get, "http://www.example.com/hello%2B/?#{ESCAPED_PARAMS}").body).to eq("abc")
9
9
  end
10
10
 
11
11
  it "should return stubbed response even if query params have integer values" do
12
- stub_request(:get, "www.example.com").with(:query => {"a" => 1}).to_return(:body => "abc")
12
+ stub_request(:get, "www.example.com").with(query: {"a" => 1}).to_return(body: "abc")
13
13
  expect(http_request(:get, "http://www.example.com/?a=1").body).to eq("abc")
14
14
  end
15
15
 
16
16
  it "should return stubbed response even if request has non escaped params" do
17
- stub_request(:get, "www.example.com/hello%2B/?#{ESCAPED_PARAMS}").to_return(:body => "abc")
17
+ stub_request(:get, "www.example.com/hello%2B/?#{ESCAPED_PARAMS}").to_return(body: "abc")
18
18
  expect(http_request(:get, "http://www.example.com/hello+/?#{NOT_ESCAPED_PARAMS}").body).to eq("abc")
19
19
  end
20
20
 
21
21
  it "should return stubbed response for url with non utf query params", "ruby>1.9" => true do
22
22
  param = 'aäoöuü'.encode('iso-8859-1')
23
23
  param = CGI.escape(param)
24
- stub_request(:get, "www.example.com/?#{param}").to_return(:body => "abc")
24
+ stub_request(:get, "www.example.com/?#{param}").to_return(body: "abc")
25
25
  expect(http_request(:get, "http://www.example.com/?#{param}").body).to eq("abc")
26
26
  end
27
27
 
28
28
  it "should return stubbed response even if stub uri is declared as regexp and request params are escaped" do
29
- stub_request(:get, /.*x=ab c.*/).to_return(:body => "abc")
29
+ stub_request(:get, /.*x=ab c.*/).to_return(body: "abc")
30
30
  expect(http_request(:get, "http://www.example.com/hello/?#{ESCAPED_PARAMS}").body).to eq("abc")
31
31
  end
32
32
 
@@ -45,22 +45,22 @@ shared_examples_for "stubbing requests" do |*adapter_info|
45
45
 
46
46
  describe "based on query params" do
47
47
  it "should return stubbed response when stub declares query params as a hash" do
48
- stub_request(:get, "www.example.com").with(:query => {"a" => ["b x", "c d"]}).to_return(:body => "abc")
48
+ stub_request(:get, "www.example.com").with(query: {"a" => ["b x", "c d"]}).to_return(body: "abc")
49
49
  expect(http_request(:get, "http://www.example.com/?a[]=b+x&a[]=c%20d").body).to eq("abc")
50
50
  end
51
51
 
52
52
  it "should return stubbed response when stub declares query params as a hash" do
53
- stub_request(:get, "www.example.com").with(:query => "a[]=b&a[]=c").to_return(:body => "abc")
53
+ stub_request(:get, "www.example.com").with(query: "a[]=b&a[]=c").to_return(body: "abc")
54
54
  expect(http_request(:get, "http://www.example.com/?a[]=b&a[]=c").body).to eq("abc")
55
55
  end
56
56
 
57
57
  it "should return stubbed response when stub declares query params both in uri and as a hash" do
58
- stub_request(:get, "www.example.com/?x=3").with(:query => {"a" => ["b", "c"]}).to_return(:body => "abc")
58
+ stub_request(:get, "www.example.com/?x=3").with(query: {"a" => ["b", "c"]}).to_return(body: "abc")
59
59
  expect(http_request(:get, "http://www.example.com/?x=3&a[]=b&a[]=c").body).to eq("abc")
60
60
  end
61
61
 
62
62
  it "should return stubbed response when stub expects only part of query params" do
63
- stub_request(:get, "www.example.com").with(:query => hash_including({"a" => ["b", "c"]})).to_return(:body => "abc")
63
+ stub_request(:get, "www.example.com").with(query: hash_including({"a" => ["b", "c"]})).to_return(body: "abc")
64
64
  expect(http_request(:get, "http://www.example.com/?a[]=b&a[]=c&b=1").body).to eq("abc")
65
65
  end
66
66
  end
@@ -88,38 +88,38 @@ shared_examples_for "stubbing requests" do |*adapter_info|
88
88
 
89
89
  describe "based on body" do
90
90
  it "should match requests if body is the same" do
91
- stub_request(:post, "www.example.com").with(:body => "abc")
91
+ stub_request(:post, "www.example.com").with(body: "abc")
92
92
  expect(http_request(
93
93
  :post, "http://www.example.com/",
94
- :body => "abc").status).to eq("200")
94
+ body: "abc").status).to eq("200")
95
95
  end
96
96
 
97
97
  it "should match requests if body is not set in the stub" do
98
98
  stub_request(:post, "www.example.com")
99
99
  expect(http_request(
100
100
  :post, "http://www.example.com/",
101
- :body => "abc").status).to eq("200")
101
+ body: "abc").status).to eq("200")
102
102
  end
103
103
 
104
104
  it "should not match requests if body is different" do
105
- stub_request(:post, "www.example.com").with(:body => "abc")
105
+ stub_request(:post, "www.example.com").with(body: "abc")
106
106
  expect {
107
- http_request(:post, "http://www.example.com/", :body => "def")
107
+ http_request(:post, "http://www.example.com/", body: "def")
108
108
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: POST http://www.example.com/ with body 'def'))
109
109
  end
110
110
 
111
111
  describe "with regular expressions" do
112
112
  it "should match requests if body matches regexp" do
113
- stub_request(:post, "www.example.com").with(:body => /\d+abc$/)
113
+ stub_request(:post, "www.example.com").with(body: /\d+abc$/)
114
114
  expect(http_request(
115
115
  :post, "http://www.example.com/",
116
- :body => "123abc").status).to eq("200")
116
+ body: "123abc").status).to eq("200")
117
117
  end
118
118
 
119
119
  it "should not match requests if body doesn't match regexp" do
120
- stub_request(:post, "www.example.com").with(:body => /^abc/)
120
+ stub_request(:post, "www.example.com").with(body: /^abc/)
121
121
  expect {
122
- http_request(:post, "http://www.example.com/", :body => "xabc")
122
+ http_request(:post, "http://www.example.com/", body: "xabc")
123
123
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: POST http://www.example.com/ with body 'xabc'))
124
124
  end
125
125
  end
@@ -127,27 +127,27 @@ shared_examples_for "stubbing requests" do |*adapter_info|
127
127
  describe "when body is declared as a hash" do
128
128
  before(:each) do
129
129
  stub_request(:post, "www.example.com").
130
- with(:body => {:a => '1', :b => 'five x', 'c' => {'d' => ['e', 'f']} })
130
+ with(body: {:a => '1', :b => 'five x', 'c' => {'d' => ['e', 'f']} })
131
131
  end
132
132
 
133
133
  describe "for request with url encoded body" do
134
134
  it "should match request if hash matches body" do
135
135
  expect(http_request(
136
136
  :post, "http://www.example.com/",
137
- :body => 'a=1&c[d][]=e&c[d][]=f&b=five+x').status).to eq("200")
137
+ body: 'a=1&c[d][]=e&c[d][]=f&b=five+x').status).to eq("200")
138
138
  end
139
139
 
140
140
  it "should match request if hash matches body in different order of params" do
141
141
  expect(http_request(
142
142
  :post, "http://www.example.com/",
143
- :body => 'a=1&c[d][]=e&b=five+x&c[d][]=f').status).to eq("200")
143
+ body: 'a=1&c[d][]=e&b=five+x&c[d][]=f').status).to eq("200")
144
144
  end
145
145
 
146
146
  it "should not match if hash doesn't match url encoded body" do
147
147
  expect {
148
148
  http_request(
149
149
  :post, "http://www.example.com/",
150
- :body => 'c[d][]=f&a=1&c[d][]=e')
150
+ body: 'c[d][]=f&a=1&c[d][]=e')
151
151
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: POST http://www.example.com/ with body 'c\[d\]\[\]=f&a=1&c\[d\]\[\]=e'))
152
152
  end
153
153
  end
@@ -156,31 +156,31 @@ shared_examples_for "stubbing requests" do |*adapter_info|
156
156
  describe "for request with json body and content type is set to json" do
157
157
  it "should match if hash matches body" do
158
158
  expect(http_request(
159
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/json'},
160
- :body => "{\"a\":\"1\",\"c\":{\"d\":[\"e\",\"f\"]},\"b\":\"five x\"}").status).to eq("200")
159
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/json'},
160
+ body: "{\"a\":\"1\",\"c\":{\"d\":[\"e\",\"f\"]},\"b\":\"five x\"}").status).to eq("200")
161
161
  end
162
162
 
163
163
  it "should match if hash matches body in different form" do
164
164
  expect(http_request(
165
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/json'},
166
- :body => "{\"a\":\"1\",\"b\":\"five x\",\"c\":{\"d\":[\"e\",\"f\"]}}").status).to eq("200")
165
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/json'},
166
+ body: "{\"a\":\"1\",\"b\":\"five x\",\"c\":{\"d\":[\"e\",\"f\"]}}").status).to eq("200")
167
167
  end
168
168
 
169
169
  it "should match if hash contains date string" do #Crack creates date object
170
170
  WebMock.reset!
171
171
  stub_request(:post, "www.example.com").
172
- with(:body => {"foo" => "2010-01-01"})
172
+ with(body: {"foo" => "2010-01-01"})
173
173
  expect(http_request(
174
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/json'},
175
- :body => "{\"foo\":\"2010-01-01\"}").status).to eq("200")
174
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/json'},
175
+ body: "{\"foo\":\"2010-01-01\"}").status).to eq("200")
176
176
  end
177
177
 
178
178
  it "should match if any of the strings have spaces" do
179
179
  WebMock.reset!
180
- stub_request(:post, "www.example.com").with(:body => {"foo" => "a b c"})
180
+ stub_request(:post, "www.example.com").with(body: {"foo" => "a b c"})
181
181
  expect(http_request(
182
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/json'},
183
- :body => "{\"foo\":\"a b c\"}").status).to eq("200")
182
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/json'},
183
+ body: "{\"foo\":\"a b c\"}").status).to eq("200")
184
184
  end
185
185
  end
186
186
 
@@ -188,43 +188,43 @@ shared_examples_for "stubbing requests" do |*adapter_info|
188
188
  before(:each) do
189
189
  WebMock.reset!
190
190
  stub_request(:post, "www.example.com").
191
- with(:body => { "opt" => {:a => '1', :b => 'five', 'c' => {'d' => ['e', 'f']} }})
191
+ with(body: { "opt" => {:a => '1', :b => 'five', 'c' => {'d' => ['e', 'f']} }})
192
192
  end
193
193
 
194
194
  it "should match if hash matches body" do
195
195
  expect(http_request(
196
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/xml'},
197
- :body => "<opt a=\"1\" b=\"five\">\n <c>\n <d>e</d>\n <d>f</d>\n </c>\n</opt>\n").status).to eq("200")
196
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/xml'},
197
+ body: "<opt a=\"1\" b=\"five\">\n <c>\n <d>e</d>\n <d>f</d>\n </c>\n</opt>\n").status).to eq("200")
198
198
  end
199
199
 
200
200
  it "should match if hash matches body in different form" do
201
201
  expect(http_request(
202
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/xml'},
203
- :body => "<opt b=\"five\" a=\"1\">\n <c>\n <d>e</d>\n <d>f</d>\n </c>\n</opt>\n").status).to eq("200")
202
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/xml'},
203
+ body: "<opt b=\"five\" a=\"1\">\n <c>\n <d>e</d>\n <d>f</d>\n </c>\n</opt>\n").status).to eq("200")
204
204
  end
205
205
 
206
206
  it "should match if hash contains date string" do #Crack creates date object
207
207
  WebMock.reset!
208
208
  stub_request(:post, "www.example.com").
209
- with(:body => {"opt" => {"foo" => "2010-01-01"}})
209
+ with(body: {"opt" => {"foo" => "2010-01-01"}})
210
210
  expect(http_request(
211
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/xml'},
212
- :body => "<opt foo=\"2010-01-01\">\n</opt>\n").status).to eq("200")
211
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/xml'},
212
+ body: "<opt foo=\"2010-01-01\">\n</opt>\n").status).to eq("200")
213
213
  end
214
214
  end
215
215
  end
216
216
 
217
217
  describe "when body is declared as partial hash matcher" do
218
218
  subject(:request) { http_request( :post, "http://www.example.com/",
219
- :body => 'a=1&c[d][]=e&c[d][]=f&b=five') }
219
+ body: 'a=1&c[d][]=e&c[d][]=f&b=five') }
220
220
 
221
221
  subject(:wrong_request) { http_request(:post, "http://www.example.com/",
222
- :body => 'c[d][]=f&a=1&c[d][]=e').status }
222
+ body: 'c[d][]=f&a=1&c[d][]=e').status }
223
223
 
224
224
  describe "when using 'RSpec:Mocks::ArgumentMatchers#hash_including'" do
225
225
  before(:each) do
226
226
  stub_request(:post, "www.example.com").
227
- with(:body => hash_including(:a, :c => {'d' => ['e', 'f']} ))
227
+ with(body: hash_including(:a, c: {'d' => ['e', 'f']} ))
228
228
  end
229
229
 
230
230
  describe "for request with url encoded body" do
@@ -240,8 +240,8 @@ shared_examples_for "stubbing requests" do |*adapter_info|
240
240
  describe "for request with json body and content type is set to json" do
241
241
  it "should match if hash matches body" do
242
242
  expect(http_request(
243
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/json'},
244
- :body => "{\"a\":\"1\",\"c\":{\"d\":[\"e\",\"f\"]},\"b\":\"five\"}").status).to eq("200")
243
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/json'},
244
+ body: "{\"a\":\"1\",\"c\":{\"d\":[\"e\",\"f\"]},\"b\":\"five\"}").status).to eq("200")
245
245
  end
246
246
  end
247
247
  end
@@ -249,7 +249,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
249
249
  describe "when using 'WebMock::API#hash_including'" do
250
250
  before(:each) do
251
251
  stub_request(:post, "www.example.com").
252
- with(:body => WebMock::API.hash_including(:a, :c => {'d' => ['e', 'f']} ))
252
+ with(body: WebMock::API.hash_including(:a, c: {'d' => ['e', 'f']} ))
253
253
  end
254
254
 
255
255
  describe "for request with url encoded body" do
@@ -265,8 +265,8 @@ shared_examples_for "stubbing requests" do |*adapter_info|
265
265
  describe "for request with json body and content type is set to json" do
266
266
  it "should match if hash matches body" do
267
267
  expect(http_request(
268
- :post, "http://www.example.com/", :headers => {'Content-Type' => 'application/json'},
269
- :body => "{\"a\":\"1\",\"c\":{\"d\":[\"e\",\"f\"]},\"b\":\"five\"}").status).to eq("200")
268
+ :post, "http://www.example.com/", headers: {'Content-Type' => 'application/json'},
269
+ body: "{\"a\":\"1\",\"c\":{\"d\":[\"e\",\"f\"]},\"b\":\"five\"}").status).to eq("200")
270
270
  end
271
271
  end
272
272
  end
@@ -276,41 +276,41 @@ shared_examples_for "stubbing requests" do |*adapter_info|
276
276
 
277
277
  describe "based on headers" do
278
278
  it "should match requests if headers are the same" do
279
- stub_request(:get, "www.example.com").with(:headers => SAMPLE_HEADERS )
279
+ stub_request(:get, "www.example.com").with(headers: SAMPLE_HEADERS )
280
280
  expect(http_request(
281
281
  :get, "http://www.example.com/",
282
- :headers => SAMPLE_HEADERS).status).to eq("200")
282
+ headers: SAMPLE_HEADERS).status).to eq("200")
283
283
  end
284
284
 
285
285
  it "should match requests if headers are the same and declared as array" do
286
- stub_request(:get, "www.example.com").with(:headers => {"a" => ["b"]} )
286
+ stub_request(:get, "www.example.com").with(headers: {"a" => ["b"]} )
287
287
  expect(http_request(
288
288
  :get, "http://www.example.com/",
289
- :headers => {"a" => "b"}).status).to eq("200")
289
+ headers: {"a" => "b"}).status).to eq("200")
290
290
  end
291
291
 
292
292
  describe "when multiple headers with the same key are used" do
293
293
  it "should match requests if headers are the same" do
294
- stub_request(:get, "www.example.com").with(:headers => {"a" => ["b", "c"]} )
294
+ stub_request(:get, "www.example.com").with(headers: {"a" => ["b", "c"]} )
295
295
  expect(http_request(
296
296
  :get, "http://www.example.com/",
297
- :headers => {"a" => ["b", "c"]}).status).to eq("200")
297
+ headers: {"a" => ["b", "c"]}).status).to eq("200")
298
298
  end
299
299
 
300
300
  it "should match requests if headers are the same but in different order" do
301
- stub_request(:get, "www.example.com").with(:headers => {"a" => ["b", "c"]} )
301
+ stub_request(:get, "www.example.com").with(headers: {"a" => ["b", "c"]} )
302
302
  expect(http_request(
303
303
  :get, "http://www.example.com/",
304
- :headers => {"a" => ["c", "b"]}).status).to eq("200")
304
+ headers: {"a" => ["c", "b"]}).status).to eq("200")
305
305
  end
306
306
 
307
307
  it "should not match requests if headers are different" do
308
- stub_request(:get, "www.example.com").with(:headers => {"a" => ["b", "c"]})
308
+ stub_request(:get, "www.example.com").with(headers: {"a" => ["b", "c"]})
309
309
 
310
310
  expect {
311
311
  http_request(
312
312
  :get, "http://www.example.com/",
313
- :headers => {"a" => ["b", "d"]})
313
+ headers: {"a" => ["b", "d"]})
314
314
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: GET http://www.example.com/ with headers))
315
315
  end
316
316
  end
@@ -319,50 +319,50 @@ shared_examples_for "stubbing requests" do |*adapter_info|
319
319
  stub_request(:get, "www.example.com")
320
320
  expect(http_request(
321
321
  :get, "http://www.example.com/",
322
- :headers => SAMPLE_HEADERS).status).to eq("200")
322
+ headers: SAMPLE_HEADERS).status).to eq("200")
323
323
  end
324
324
 
325
325
  it "should not match requests if headers are different" do
326
- stub_request(:get, "www.example.com").with(:headers => SAMPLE_HEADERS)
326
+ stub_request(:get, "www.example.com").with(headers: SAMPLE_HEADERS)
327
327
 
328
328
  expect {
329
329
  http_request(
330
330
  :get, "http://www.example.com/",
331
- :headers => { 'Content-Length' => '9999'})
331
+ headers: { 'Content-Length' => '9999'})
332
332
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: GET http://www.example.com/ with headers))
333
333
  end
334
334
 
335
335
  it "should not match if accept header is different" do
336
336
  stub_request(:get, "www.example.com").
337
- with(:headers => { 'Accept' => 'application/json'})
337
+ with(headers: { 'Accept' => 'application/json'})
338
338
  expect {
339
339
  http_request(
340
340
  :get, "http://www.example.com/",
341
- :headers => { 'Accept' => 'application/xml'})
341
+ headers: { 'Accept' => 'application/xml'})
342
342
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: GET http://www.example.com/ with headers))
343
343
  end
344
344
 
345
345
  describe "declared as regular expressions" do
346
346
  it "should match requests if header values match regular expression" do
347
- stub_request(:get, "www.example.com").with(:headers => { :some_header => /^MyAppName$/ })
347
+ stub_request(:get, "www.example.com").with(headers: { some_header: /^MyAppName$/ })
348
348
  expect(http_request(
349
349
  :get, "http://www.example.com/",
350
- :headers => { 'some-header' => 'MyAppName' }).status).to eq("200")
350
+ headers: { 'some-header' => 'MyAppName' }).status).to eq("200")
351
351
  end
352
352
 
353
353
  it "should not match requests if headers values do not match regular expression" do
354
- stub_request(:get, "www.example.com").with(:headers => { :some_header => /^MyAppName$/ })
354
+ stub_request(:get, "www.example.com").with(headers: { some_header: /^MyAppName$/ })
355
355
 
356
356
  expect {
357
357
  http_request(
358
358
  :get, "http://www.example.com/",
359
- :headers => { 'some-header' => 'xMyAppName' })
359
+ headers: { 'some-header' => 'xMyAppName' })
360
360
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: GET http://www.example.com/ with headers))
361
361
  end
362
362
  end
363
363
  end
364
364
 
365
- describe "when stubbing request with userinfo in url", :unless => (adapter_info.include?(:no_url_auth)) do
365
+ describe "when stubbing request with userinfo in url", unless: (adapter_info.include?(:no_url_auth)) do
366
366
  it "should match if credentials are the same" do
367
367
  stub_request(:get, "user:pass@www.example.com")
368
368
  expect(http_request(:get, "http://user:pass@www.example.com/").status).to eq("200")
@@ -437,7 +437,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
437
437
  expect(http_request(:get, "http://www.example.com/", basic_auth: ['user', 'pass']).status).to eq("200")
438
438
  end
439
439
 
440
- it "should not match if request has credentials provides in userinfo", :unless => (adapter_info.include?(:no_url_auth)) do
440
+ it "should not match if request has credentials provides in userinfo", unless: (adapter_info.include?(:no_url_auth)) do
441
441
  stub_request(:get, "www.example.com").with(basic_auth: ['user', 'pass'])
442
442
  expect {
443
443
  expect(http_request(:get, "http://user:pass@www.example.com/").status).to eq("200")
@@ -452,7 +452,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
452
452
 
453
453
  it 'returns the response returned by the hook' do
454
454
  WebMock.globally_stub_request do |request|
455
- { :body => "global stub body" }
455
+ { body: "global stub body" }
456
456
  end
457
457
 
458
458
  expect(http_request(:get, "http://www.example.com/").body).to eq("global stub body")
@@ -460,7 +460,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
460
460
 
461
461
  it 'does not get cleared when a user calls WebMock.reset!' do
462
462
  WebMock.globally_stub_request do |request|
463
- { :body => "global stub body" }
463
+ { body: "global stub body" }
464
464
  end
465
465
  WebMock.reset!
466
466
  expect(http_request(:get, "http://www.example.com/").body).to eq("global stub body")
@@ -477,7 +477,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
477
477
  passed_request = nil
478
478
  WebMock.globally_stub_request do |request|
479
479
  passed_request = request
480
- { :body => "global stub body" }
480
+ { body: "global stub body" }
481
481
  end
482
482
 
483
483
  http_request(:get, "http://www.example.com:456/bar")
@@ -488,7 +488,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
488
488
  call_count = 0
489
489
  WebMock.globally_stub_request do |request|
490
490
  call_count += 1
491
- { :body => "global stub body" }
491
+ { body: "global stub body" }
492
492
  end
493
493
  http_request(:get, "http://www.example.com/")
494
494
  expect(call_count).to eq(1)
@@ -503,7 +503,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
503
503
 
504
504
  WebMock.globally_stub_request do |request|
505
505
  stub_invocation_order << :hash_stub
506
- { :body => "global stub body" }
506
+ { body: "global stub body" }
507
507
  end
508
508
 
509
509
  expect(http_request(:get, "http://www.example.com/").body).to eq("global stub body")
@@ -513,7 +513,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
513
513
  [:before, :after].each do |before_or_after|
514
514
  context "when there is also a non-global registered stub #{before_or_after} the global stub" do
515
515
  def stub_non_globally
516
- stub_request(:get, "www.example.com").to_return(:body => 'non-global stub body')
516
+ stub_request(:get, "www.example.com").to_return(body: 'non-global stub body')
517
517
  end
518
518
 
519
519
  define_method :register_stubs do |block|
@@ -523,7 +523,7 @@ shared_examples_for "stubbing requests" do |*adapter_info|
523
523
  end
524
524
 
525
525
  it 'uses the response from the global stub if the block returns a non-nil value' do
526
- register_stubs(lambda { |req| { :body => 'global stub body' } })
526
+ register_stubs(lambda { |req| { body: 'global stub body' } })
527
527
  expect(http_request(:get, "http://www.example.com/").body).to eq("global stub body")
528
528
  end
529
529
 
@@ -552,9 +552,9 @@ shared_examples_for "stubbing requests" do |*adapter_info|
552
552
  stub_request(:post, "www.example.com").with { |request| request.body == "wadus" }
553
553
  expect(http_request(
554
554
  :post, "http://www.example.com/",
555
- :body => "wadus").status).to eq("200")
555
+ body: "wadus").status).to eq("200")
556
556
  expect {
557
- http_request(:post, "http://www.example.com/", :body => "jander")
557
+ http_request(:post, "http://www.example.com/", body: "jander")
558
558
  }.to raise_error(WebMock::NetConnectNotAllowedError, %r(Real HTTP connections are disabled. Unregistered request: POST http://www.example.com/ with body 'jander'))
559
559
  end
560
560