webmock 1.15.0 → 1.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.md +6 -0
- data/README.md +2 -0
- data/lib/webmock/api.rb +3 -6
- data/lib/webmock/version.rb +1 -1
- data/spec/unit/errors_spec.rb +5 -5
- data/spec/unit/include_spec.rb +37 -0
- metadata +6 -4
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 1.15.2
|
4
|
+
|
5
|
+
* Fixed `hash_including` to accept a splat of solitary keys.
|
6
|
+
|
7
|
+
Thanks to [Tamir Duberstein](https://github.com/tamird) and [https://github.com/strongriley](https://github.com/strongriley)
|
8
|
+
|
3
9
|
## 1.15.0
|
4
10
|
|
5
11
|
* Excon >= 0.27.5 compatibility.
|
data/README.md
CHANGED
@@ -862,6 +862,8 @@ People who submitted patches and new features or suggested improvements. Many th
|
|
862
862
|
* Florian Dütsch
|
863
863
|
* Manuel Meurer
|
864
864
|
* Brian D. Burns
|
865
|
+
* Riley Strong
|
866
|
+
* Tamir Duberstein
|
865
867
|
|
866
868
|
For a full list of contributors you can visit the
|
867
869
|
[contributors](https://github.com/bblimke/webmock/contributors) page.
|
data/lib/webmock/api.rb
CHANGED
@@ -17,7 +17,6 @@ module WebMock
|
|
17
17
|
alias :request :a_request
|
18
18
|
end
|
19
19
|
|
20
|
-
|
21
20
|
def assert_requested(*args, &block)
|
22
21
|
if not args[0].is_a?(WebMock::RequestStub)
|
23
22
|
args = convert_uri_method_and_options_to_request_and_options(*args, &block)
|
@@ -36,11 +35,9 @@ module WebMock
|
|
36
35
|
assert_request_not_requested(*args)
|
37
36
|
end
|
38
37
|
|
39
|
-
def hash_including(expected)
|
40
|
-
if defined?(
|
41
|
-
|
42
|
-
elsif defined?(::Spec::Mocks::ArgumentMatchers::HashIncludingMatcher)
|
43
|
-
Spec::Mocks::ArgumentMatchers::HashIncludingMatcher.new(expected)
|
38
|
+
def hash_including(*expected)
|
39
|
+
if defined?(super)
|
40
|
+
super
|
44
41
|
else
|
45
42
|
WebMock::Matchers::HashIncludingMatcher.new(expected)
|
46
43
|
end
|
data/lib/webmock/version.rb
CHANGED
data/spec/unit/errors_spec.rb
CHANGED
@@ -29,11 +29,11 @@ describe "errors" do
|
|
29
29
|
end
|
30
30
|
|
31
31
|
it "should not be caught by a rescue block without arguments" do
|
32
|
-
request_signature =
|
33
|
-
request_stub =
|
34
|
-
WebMock::RequestStub.stub
|
35
|
-
WebMock::StubRequestSnippet.stub
|
36
|
-
with(request_stub).and_return(
|
32
|
+
request_signature = double(:to_s => "aaa")
|
33
|
+
request_stub = double
|
34
|
+
WebMock::RequestStub.stub(:from_request_signature).and_return(request_stub)
|
35
|
+
WebMock::StubRequestSnippet.stub(:new).
|
36
|
+
with(request_stub).and_return(double(:to_s => "bbb"))
|
37
37
|
|
38
38
|
exception = WebMock::NetConnectNotAllowedError.new(request_signature)
|
39
39
|
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe WebMock::API do
|
4
|
+
describe '#hash_including' do
|
5
|
+
subject { klass.new.hash_including(*args) }
|
6
|
+
|
7
|
+
let(:args) { %w(foo bar) }
|
8
|
+
|
9
|
+
context 'when mixed into a class that does not define `hash_including`' do
|
10
|
+
let(:klass) do
|
11
|
+
Class.new do
|
12
|
+
include WebMock::API
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'uses WebMock::Matchers::HashIncludingMatcher' do
|
17
|
+
expect(subject).to be_a(WebMock::Matchers::HashIncludingMatcher)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
context 'when mixed into a class with a parent that defines `hash_including`' do
|
22
|
+
let(:klass) do
|
23
|
+
Class.new(
|
24
|
+
Class.new do
|
25
|
+
def hash_including(*args)
|
26
|
+
args
|
27
|
+
end
|
28
|
+
end
|
29
|
+
) { include WebMock::API }
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'uses super and passes the args untampered' do
|
33
|
+
expect(subject).to eq(args)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: webmock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 47
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 15
|
9
|
-
-
|
10
|
-
version: 1.15.
|
9
|
+
- 2
|
10
|
+
version: 1.15.2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Bartosz Blimke
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2013-10-
|
18
|
+
date: 2013-10-30 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: addressable
|
@@ -294,6 +294,7 @@ files:
|
|
294
294
|
- spec/unit/errors_spec.rb
|
295
295
|
- spec/unit/http_lib_adapters/http_lib_adapter_registry_spec.rb
|
296
296
|
- spec/unit/http_lib_adapters/http_lib_adapter_spec.rb
|
297
|
+
- spec/unit/include_spec.rb
|
297
298
|
- spec/unit/rack_response_spec.rb
|
298
299
|
- spec/unit/request_execution_verifier_spec.rb
|
299
300
|
- spec/unit/request_pattern_spec.rb
|
@@ -383,6 +384,7 @@ test_files:
|
|
383
384
|
- spec/unit/errors_spec.rb
|
384
385
|
- spec/unit/http_lib_adapters/http_lib_adapter_registry_spec.rb
|
385
386
|
- spec/unit/http_lib_adapters/http_lib_adapter_spec.rb
|
387
|
+
- spec/unit/include_spec.rb
|
386
388
|
- spec/unit/rack_response_spec.rb
|
387
389
|
- spec/unit/request_execution_verifier_spec.rb
|
388
390
|
- spec/unit/request_pattern_spec.rb
|