mirage 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
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