webmock 3.9.1 → 3.9.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -4
- data/README.md +1 -0
- data/lib/webmock/stub_registry.rb +12 -2
- data/lib/webmock/version.rb +1 -1
- metadata +8 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 288c357fc347a74fb184fce39aa9aae6bd519efa26ed02a9d04f9f8fe3b85d47
|
4
|
+
data.tar.gz: 45b80da5db5b767f2ecf109bfcee71179f39607e313dfb0d633a2ed47c7d1dcd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 47f67ac72cf54bfe63b33d383deb69724cf5574bdf37204df96b708f822613b21893848716e93e29d92a79a22dfdb44280a59fb71c4933a2a0a9d97496c0c16c
|
7
|
+
data.tar.gz: e7f1ceaae61b7a29f81e5fc506477236a85ac5338f9fcf58ea41e0f66cfe2c7dbff40e2aedffba992901ac27139526cc9e43f41b7cf222e1ee02861aff78616d
|
data/CHANGELOG.md
CHANGED
@@ -1,8 +1,14 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
# 3.9.2
|
4
|
+
|
5
|
+
* Made global stubs thread-safe
|
6
|
+
|
7
|
+
Thanks to [Adam Harwood](https://github.com/adam-harwood)
|
8
|
+
|
3
9
|
# 3.9.1
|
4
10
|
|
5
|
-
Fixed support for passing `URI` objects as second argument of `stub_request`
|
11
|
+
* Fixed support for passing `URI` objects as second argument of `stub_request`
|
6
12
|
|
7
13
|
Thanks to [Ryan Kerr](https://github.com/leboshi)
|
8
14
|
|
@@ -28,11 +34,11 @@
|
|
28
34
|
|
29
35
|
* Fixed async-http adapter which caused Async::HTTP::Client or Async::HTTP::Internet to hang and never return a response.
|
30
36
|
|
31
|
-
Thanks to
|
37
|
+
Thanks to [Bruno Sutic](https://github.com/bruno-) and [Samuel Williams](https://github.com/ioquatix)
|
32
38
|
|
33
39
|
* Fixed warning when using async-http adapter
|
34
40
|
|
35
|
-
Thanks to
|
41
|
+
Thanks to [Bruno Sutic](https://github.com/bruno-)
|
36
42
|
|
37
43
|
* Dropped support for Ruby 2.3 - EOL date: 2019-03-31
|
38
44
|
|
@@ -40,7 +46,7 @@
|
|
40
46
|
|
41
47
|
* Handling matching of Addressable::Template patterns that have an ip address without port and patterns that have ip address and don’t have schema and path.
|
42
48
|
|
43
|
-
Thanks to
|
49
|
+
Thanks to [Rafael França](https://github.com/rafaelfranca) and [guppy0356](https://github.com/guppy0356)
|
44
50
|
|
45
51
|
## 3.8.3
|
46
52
|
|
data/README.md
CHANGED
@@ -1137,6 +1137,7 @@ People who submitted patches and new features or suggested improvements. Many th
|
|
1137
1137
|
* Lucas Uyezu
|
1138
1138
|
* Bruno Sutic
|
1139
1139
|
* Ryan Kerr
|
1140
|
+
* Adam Harwood
|
1140
1141
|
|
1141
1142
|
For a full list of contributors you can visit the
|
1142
1143
|
[contributors](https://github.com/bblimke/webmock/contributors) page.
|
@@ -23,10 +23,20 @@ module WebMock
|
|
23
23
|
# That way, there's no race condition in case #to_return
|
24
24
|
# doesn't run immediately after stub.with.
|
25
25
|
responses = {}
|
26
|
+
response_lock = Mutex.new
|
26
27
|
|
27
28
|
stub = ::WebMock::RequestStub.new(:any, ->(uri) { true }).with { |request|
|
28
|
-
responses[request.object_id] = yield(request)
|
29
|
-
|
29
|
+
update_response = -> { responses[request.object_id] = yield(request) }
|
30
|
+
|
31
|
+
# The block can recurse, so only lock if we don't already own it
|
32
|
+
if response_lock.owned?
|
33
|
+
update_response.call
|
34
|
+
else
|
35
|
+
response_lock.synchronize(&update_response)
|
36
|
+
end
|
37
|
+
}.to_return(lambda { |request|
|
38
|
+
response_lock.synchronize { responses.delete(request.object_id) }
|
39
|
+
})
|
30
40
|
|
31
41
|
global_stubs.push stub
|
32
42
|
end
|
data/lib/webmock/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: webmock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.9.
|
4
|
+
version: 3.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bartosz Blimke
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-10-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -407,11 +407,11 @@ licenses:
|
|
407
407
|
- MIT
|
408
408
|
metadata:
|
409
409
|
bug_tracker_uri: https://github.com/bblimke/webmock/issues
|
410
|
-
changelog_uri: https://github.com/bblimke/webmock/blob/v3.9.
|
411
|
-
documentation_uri: https://www.rubydoc.info/gems/webmock/3.9.
|
412
|
-
source_code_uri: https://github.com/bblimke/webmock/tree/v3.9.
|
410
|
+
changelog_uri: https://github.com/bblimke/webmock/blob/v3.9.2/CHANGELOG.md
|
411
|
+
documentation_uri: https://www.rubydoc.info/gems/webmock/3.9.2
|
412
|
+
source_code_uri: https://github.com/bblimke/webmock/tree/v3.9.2
|
413
413
|
wiki_uri: https://github.com/bblimke/webmock/wiki
|
414
|
-
post_install_message:
|
414
|
+
post_install_message:
|
415
415
|
rdoc_options: []
|
416
416
|
require_paths:
|
417
417
|
- lib
|
@@ -427,7 +427,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
427
427
|
version: '0'
|
428
428
|
requirements: []
|
429
429
|
rubygems_version: 3.1.2
|
430
|
-
signing_key:
|
430
|
+
signing_key:
|
431
431
|
specification_version: 4
|
432
432
|
summary: Library for stubbing HTTP requests in Ruby.
|
433
433
|
test_files:
|