mirage 4.0.0.alpha4 → 4.0.0.alpha5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/server/mock_response.rb +2 -2
- data/server/mock_response_set.rb +7 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 224a5f945b7e5a6141efdf2d0e69cfebbb55546f
|
4
|
+
data.tar.gz: d15b39a80c0d32ccf2eaeda7fa5b48435da57d2d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 81e98272e32815fc4d3ec0d3b6b129f40a7a6f2a60993ae8f6050199adea19b92454a39d01178140ce5602e9b34791e24664940f6691ecb727fb1fe65ae5b80d
|
7
|
+
data.tar.gz: 1aa92fbfb9dd42cddb20a57e8b8ad677aab17729913526a452ca4334003d9c0f205ceca045bf06322e051c3099d5339898f590085995844c01ba22f49f62a73d
|
data/server/mock_response.rb
CHANGED
@@ -50,7 +50,7 @@ module Mirage
|
|
50
50
|
options[:http_method].upcase!
|
51
51
|
http_method = options[:http_method]
|
52
52
|
default_responses = subdomains(options[:endpoint]).collect do |domain|
|
53
|
-
if (responses_for_domain = responses.fuzzy_find(domain))
|
53
|
+
if (responses_for_domain = responses.fuzzy_find(domain, http_method))
|
54
54
|
responses_for_domain[http_method].find_all { |response| response.default? } if responses_for_domain[http_method]
|
55
55
|
end
|
56
56
|
end.flatten.compact
|
@@ -67,7 +67,7 @@ module Mirage
|
|
67
67
|
end
|
68
68
|
|
69
69
|
def find(options)
|
70
|
-
options[:response_set] = responses.fuzzy_find(options[:endpoint])
|
70
|
+
options[:response_set] = responses.fuzzy_find(options[:endpoint], options[:http_method])
|
71
71
|
find_in_response_set(options) || raise(ServerResponseNotFound)
|
72
72
|
end
|
73
73
|
|
data/server/mock_response_set.rb
CHANGED
@@ -1,10 +1,14 @@
|
|
1
1
|
module Mirage
|
2
2
|
class MockResponseSet < Hash
|
3
|
-
def fuzzy_find desired_key
|
3
|
+
def fuzzy_find desired_key, http_method
|
4
4
|
result = self[desired_key]
|
5
5
|
return result unless result.nil?
|
6
|
-
|
7
|
-
|
6
|
+
result = find_all do |key, value|
|
7
|
+
key.is_a?(Regexp) && desired_key.is_a?(String) && key.match(desired_key) && value[http_method]
|
8
|
+
end.sort do |a,b|
|
9
|
+
b.first.source.size <=> a.first.source.size
|
10
|
+
end
|
11
|
+
result.first && result.first[1]
|
8
12
|
end
|
9
13
|
end
|
10
14
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mirage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.0.
|
4
|
+
version: 4.0.0.alpha5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Leon Davis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-01-
|
11
|
+
date: 2018-01-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sinatra
|