mirage 0.1.5 → 0.1.6

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/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mirage (0.1.5)
4
+ mirage (0.1.6)
5
5
  mechanize (>= 1.0.0)
6
6
  rack (~> 1.1.0)
7
7
  ramaze (>= 2011.01.30)
@@ -16,7 +16,7 @@ Feature: Mirage can respond with a 'default' response when a when the response r
16
16
  | response | another level |
17
17
  And I hit 'http://localhost:7001/mirage/set/level1' with parameters:
18
18
  | response | level 1 |
19
- | root_response | true |
19
+ | default | true |
20
20
 
21
21
  When I hit 'http://localhost:7001/mirage/get/level1/level2'
22
22
  Then 'level 1' should be returned
@@ -25,17 +25,17 @@ Feature: Mirage can respond with a 'default' response when a when the response r
25
25
  Scenario: More than one potential default response exists
26
26
  Given I hit 'http://localhost:7001/mirage/set/level1' with parameters:
27
27
  | response | level 1 |
28
- | root_response | true |
28
+ | default | true |
29
29
  And I hit 'http://localhost:7001/mirage/set/level1/level2' with parameters:
30
30
  | response | level 2 |
31
- | root_response | true |
31
+ | default | true |
32
32
  And I hit 'http://localhost:7001/mirage/set/level1/level2/level3' with parameters:
33
33
  | response | level 3 |
34
34
  And I hit 'http://localhost:7001/mirage/set/level1/level2/level3/level4' with parameters:
35
35
  | pattern | a pattern that wont be matched |
36
36
  And I hit 'http://localhost:7001/mirage/set/level1/level2/level3/level4/level5' with parameters:
37
37
  | response | level 5 |
38
- | root_response | true |
38
+ | default | true |
39
39
 
40
40
  When I hit 'http://localhost:7001/mirage/get/level1/level2/level3/level4'
41
41
  Then 'level 2' should be returned
@@ -6,7 +6,7 @@ Feature: Mirage's home page allows you to see what response are currently being
6
6
  Background: There are already a couple of responses hosted on he Mirage server
7
7
  Given I hit 'http://localhost:7001/mirage/set/greeting' with parameters:
8
8
  | response | hello |
9
- | root_response | true |
9
+ | default | true |
10
10
  And I hit 'http://localhost:7001/mirage/set/leaving' with parameters:
11
11
  | response | goodbye |
12
12
 
data/lib/mirage/core.rb CHANGED
@@ -14,16 +14,16 @@ module Mirage
14
14
  attr_reader :response_id, :delay, :name, :pattern
15
15
  attr_accessor :response_id
16
16
 
17
- def initialize name, value, pattern=nil, delay=0, root_response=false
18
- @name, @value, @pattern, @response_id, @delay, @root_response = name, value, pattern, @@id_count+=1, delay, root_response
17
+ def initialize name, value, pattern=nil, delay=0, default=false
18
+ @name, @value, @pattern, @response_id, @delay, @default = name, value, pattern, @@id_count+=1, delay, default
19
19
  end
20
20
 
21
21
  def self.reset_count
22
22
  @@id_count = 0
23
23
  end
24
24
 
25
- def root_response?
26
- @root_response
25
+ def default?
26
+ @default
27
27
  end
28
28
 
29
29
  def file?
@@ -71,7 +71,7 @@ module Mirage
71
71
 
72
72
  responses.each do |pattern, response|
73
73
  pattern = pattern.is_a?(Regexp) ? pattern.source : pattern
74
- @responses["#{name}#{'/*' if response.root_response?}: #{pattern}"] = response
74
+ @responses["#{name}#{'/*' if response.default?}: #{pattern}"] = response
75
75
  end
76
76
  end
77
77
  end
@@ -91,9 +91,9 @@ module Mirage
91
91
  delay = (request['delay']||0)
92
92
  pattern = request['pattern'] ? /#{request['pattern']}/ : :default
93
93
  name = args.join('/')
94
- is_root_response = request['root_response'] == 'true'
94
+ is_default = request['default'] == 'true'
95
95
 
96
- response = MockResponse.new(name, (request[:file]||response_value), pattern, delay.to_f, is_root_response)
96
+ response = MockResponse.new(name, (request[:file]||response_value), pattern, delay.to_f, is_default)
97
97
 
98
98
  stored_responses = RESPONSES[name]||={}
99
99
 
@@ -113,11 +113,11 @@ module Mirage
113
113
  if stored_responses
114
114
  record = find_response(body, query_string, stored_responses)
115
115
  else
116
- root_responses, record = find_root_responses(name), nil
116
+ default_responses, record = find_default_responses(name), nil
117
117
 
118
- until record || root_responses.empty?
119
- record = find_response(body, query_string, root_responses.delete_at(0))
120
- record = record.root_response? ? record : nil
118
+ until record || default_responses.empty?
119
+ record = find_response(body, query_string, default_responses.delete_at(0))
120
+ record = record.default? ? record : nil
121
121
  end
122
122
  end
123
123
 
@@ -183,7 +183,7 @@ module Mirage
183
183
  respond('response or file parameter required', 500)
184
184
  end
185
185
 
186
- def find_root_responses(name)
186
+ def find_default_responses(name)
187
187
  matches = RESPONSES.keys.find_all { |key| name.index(key) == 0 }.sort { |a, b| b.length <=> a.length }
188
188
  matches.collect { |key| RESPONSES[key] }
189
189
  end
data/mirage.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'mirage'
3
- s.version = '0.1.5'
3
+ s.version = '0.1.6'
4
4
  s.authors = ["Leon Davis"]
5
5
  s.homepage = 'https://github.com/lashd/mirage'
6
6
  s.description = 'Mirage aids testing of your applications by hosting mock responses so that your applications do not have to talk to real endpoints. Its accessible via HTTP and has a RESTful interface.'
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: mirage
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.5
5
+ version: 0.1.6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Leon Davis
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-03-24 00:00:00 +00:00
13
+ date: 2011-03-27 00:00:00 +00:00
14
14
  default_executable: mirage
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -145,7 +145,7 @@ licenses: []
145
145
 
146
146
  post_install_message: "\n\
147
147
  ===============================================================================\n\
148
- Thanks you for installing mirage-0.1.5. \n\n\
148
+ Thanks you for installing mirage-0.1.6. \n\n\
149
149
  Run Mirage with:\n\n\
150
150
  mirage start\n\
151
151
  ===============================================================================\n"
@@ -171,7 +171,7 @@ rubyforge_project:
171
171
  rubygems_version: 1.6.1
172
172
  signing_key:
173
173
  specification_version: 3
174
- summary: mirage-0.1.5
174
+ summary: mirage-0.1.6
175
175
  test_files:
176
176
  - features/checking_for_requests.feature
177
177
  - features/clearing_requests_and_responses.feature