mirage 3.0.14 → 4.0.0.alpha1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NjNiNzU3NTM2Zjk4YzE0MGNlYzE1YWVlMGQ4OWJhMmQ4M2FkOTdkMA==
5
- data.tar.gz: !binary |-
6
- ZjFiYmQzYjZlYzMxYWFiNmZlNTUxMWQ2MWUzOTQyMGU0NjIyMmEyMw==
2
+ SHA1:
3
+ metadata.gz: f6e9871a63a2b39f0502f30432f05d8bdfb622c4
4
+ data.tar.gz: 0c5bac0bdb4dae476950e56ab1f1af2092fef881
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- Y2FmMjAwOTc1YzhlMzZlODIwMzVkODcyYzcyY2E2ZDQ5NmNlZDExZmVhMWZh
10
- N2M0MDgyOWE0OTdkMzVlOWMzOWFhNWM0YTY5MDZjYmZhZDBiZjQ5YzI4YzE1
11
- YTM1OWQ3MzZlZDg0MDkwMmJiNGM5NGVmODY2YzJhNjE2YmNhZTA=
12
- data.tar.gz: !binary |-
13
- NzNiMTIyOGQxMzlhYmM1NmM0ZDQyOTgzMWIwYmM3MDdkMmQ3ZDAyODI2MDMy
14
- NjM1NmUzZWQxZjY3ZDc2NjAyNjQ1NGEzNTczZTE2ZDNiYjg3YTJjMjc4NDI4
15
- YmY3ODhkYjZmMGNhY2NiODYzMDk3NjI2YzY3MGQ5MzJlOGYyOTQ=
6
+ metadata.gz: dd838a9538c6eff9e445dfe3e03043525b8fc5661e56f6de10bfb23c5638984dedeceeca9fbeb2fdec7c1f5c96d651717b9d5d78501e7e737ce2bf97977de25b
7
+ data.tar.gz: 857b213ff50e989b6006f06fb3ccbc7b5960e89c2fe4dcc0a07685fc626433a499f5a94372a62f4f97942637e8edb3a6861be0e95e79920ec7ad8c436dd8a1c7
@@ -17,7 +17,7 @@ module Mirage
17
17
  elsif options.kind_of?(Hash) && options[:url]
18
18
  @url = options[:url]
19
19
  else
20
- raise "specify a valid URL or port"
20
+ raise ArgumentError, "specify a valid URL or port"
21
21
  end
22
22
 
23
23
  @templates = Templates.new(@url)
@@ -38,8 +38,8 @@ module Mirage
38
38
  end
39
39
 
40
40
  def requests id=nil
41
- return Request.get "#{@url}/requests/#{id}" if id
42
- Requests.new(@url)
41
+ return Requests.get "#{@url}/requests/#{id}" if id
42
+ Requests.new("#{@url}/requests")
43
43
  end
44
44
 
45
45
  def prime
@@ -1,30 +1,6 @@
1
1
  require 'hashie/mash'
2
2
  module Mirage
3
3
  class Request
4
- include HTTParty
5
-
6
- class << self
7
- alias_method :backedup_get, :get
8
- def get url
9
- result = Hashie::Mash.new(backedup_get(url, format: :json))
10
- request = new
11
- request.parameters = result.parameters
12
- request.headers = result.headers
13
- request.request_url = result.request_url
14
- request.body = result.body
15
- request.id = result.id
16
- request
17
- rescue
18
- raise NotReceivedException.new('Mirage has not received a request for this id')
19
- end
20
- end
21
-
22
4
  attr_accessor :parameters, :headers, :body, :request_url, :id
23
-
24
- def delete
25
- self.class.delete(id)
26
- end
27
-
28
- class NotReceivedException < StandardError ; end
29
5
  end
30
6
  end
@@ -1,13 +1,38 @@
1
1
  module Mirage
2
- class Requests
2
+ class Requests < Array
3
+ class NotReceivedException < StandardError ; end
4
+
3
5
  include HTTParty
4
6
 
7
+ class << self
8
+ alias_method :backedup_get, :get
9
+ def get url
10
+ response = backedup_get(url, format: :json)
11
+ requests = new(url)
12
+ response.each do |request_data|
13
+ request_data_hash = Hashie::Mash.new(request_data)
14
+ request = Request.new
15
+ request.parameters = request_data_hash.parameters
16
+ request.headers = request_data_hash.headers
17
+ request.request_url = request_data_hash.request_url
18
+ request.body = request_data_hash.body
19
+ request.id = request_data_hash.id
20
+ requests << request
21
+ end
22
+ requests
23
+ rescue Exception => e
24
+ raise NotReceivedException.new('Mirage has not received a request for this id')
25
+ end
26
+ end
27
+
5
28
  def initialize base_url
6
- @url = "#{base_url}/requests"
29
+ @url = base_url
7
30
  end
8
31
 
9
32
  def delete_all
10
33
  self.class.delete(@url)
11
34
  end
35
+
36
+ alias delete delete_all
12
37
  end
13
38
  end
@@ -1,7 +1,7 @@
1
1
  require 'ostruct'
2
2
  require 'json'
3
3
  require 'httparty'
4
- require 'hashie/mash'
4
+ require 'hashie/mash_ext'
5
5
 
6
6
  require 'client/template/configuration'
7
7
  require 'client/template/model'
@@ -38,7 +38,7 @@ module Mirage
38
38
 
39
39
  def delete
40
40
  self.class.delete(url)
41
- Request.delete requests_url
41
+ Requests.delete requests_url
42
42
  end
43
43
 
44
44
 
@@ -0,0 +1,8 @@
1
+ require 'hashie/mash'
2
+ module Mirage
3
+ module Hashie
4
+ class Mash < ::Hashie::Mash
5
+ disable_warnings
6
+ end
7
+ end
8
+ end
data/server/errors.rb ADDED
@@ -0,0 +1,11 @@
1
+ module Mirage
2
+ class Server < Sinatra::Base
3
+ error ServerResponseNotFound do
4
+ 404
5
+ end
6
+
7
+ error do
8
+ erb request.env['sinatra.error'].message
9
+ end
10
+ end
11
+ end
data/server/helpers.rb CHANGED
@@ -1,3 +1,36 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
  require 'helpers/template_requirements'
3
- require 'helpers/http_headers'
3
+ require 'helpers/http_headers'
4
+
5
+ module Mirage
6
+ class Server < Sinatra::Base
7
+ helpers do
8
+
9
+ def synchronize &block
10
+ Mutex.new.synchronize &block
11
+ end
12
+
13
+ def response_id
14
+ params[:id].to_i
15
+ end
16
+
17
+ def prime &block
18
+ block.call Mirage::Client.new "http://localhost:#{settings.port}"
19
+ end
20
+
21
+ def send_response(mock_response, body='', request={}, query_string='')
22
+ sleep mock_response.response_spec['delay']
23
+ content_type(mock_response.response_spec['content_type'])
24
+ status mock_response.response_spec['status']
25
+ headers mock_response.headers
26
+ mock_response.value(body, request, query_string)
27
+ end
28
+
29
+ def tracked_requests response_id
30
+ REQUESTS[response_id] ||= []
31
+ end
32
+
33
+
34
+ end
35
+ end
36
+ end
data/server/routes.rb ADDED
@@ -0,0 +1,21 @@
1
+ require 'routes/defaults'
2
+ require 'routes/templates'
3
+ require 'routes/requests'
4
+ require 'routes/backup'
5
+ require 'routes/responses'
6
+ require 'routes/pid'
7
+ module Mirage
8
+ class Server < Sinatra::Base
9
+ get '/' do
10
+ haml :index
11
+ end
12
+
13
+ put '/' do
14
+ synchronize do
15
+ MockResponse.revert
16
+ end
17
+
18
+ 200
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,11 @@
1
+ module Mirage
2
+ class Server < Sinatra::Base
3
+ put '/backup' do
4
+ synchronize do
5
+ MockResponse.backup
6
+ end
7
+
8
+ 200
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,20 @@
1
+ module Mirage
2
+
3
+ class Server < Sinatra::Base
4
+ put '/defaults' do
5
+ synchronize do
6
+ MockResponse.delete_all
7
+ if File.directory?(settings.defaults.to_s)
8
+ Dir["#{settings.defaults}/**/*.rb"].each do |default|
9
+ begin
10
+ eval File.read(default)
11
+ rescue Exception => e
12
+ raise "Unable to load default responses from: #{default}"
13
+ end
14
+ end
15
+ end
16
+ end
17
+ 200
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,7 @@
1
+ module Mirage
2
+ class Server < Sinatra::Base
3
+ get '/pid' do
4
+ "#{$$}"
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,43 @@
1
+ module Mirage
2
+ class Server < Sinatra::Base
3
+ REQUESTS = {}
4
+ delete '/requests' do
5
+ synchronize do
6
+ REQUESTS.clear
7
+ end
8
+
9
+ 200
10
+ end
11
+
12
+ delete '/requests/:id' do
13
+ synchronize do
14
+ REQUESTS.delete(response_id)
15
+ end
16
+
17
+ 200
18
+ end
19
+
20
+ get '/requests/:id' do
21
+ content_type :json
22
+ tracked_requests = tracked_requests(response_id)
23
+ response = []
24
+ if tracked_requests
25
+ tracked_requests.collect do |tracked_request|
26
+ tracked_request.body.rewind
27
+ body = tracked_request.body.read
28
+
29
+ parameters = tracked_request.params.dup.select { |key, value| key != body }
30
+
31
+ response << {id: request.url,
32
+ request_url: tracked_request.url,
33
+ headers: extract_http_headers(tracked_request.env),
34
+ parameters: parameters,
35
+ body: body}
36
+ end
37
+ response.to_json
38
+ else
39
+ 404
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,27 @@
1
+ module Mirage
2
+ class Server < Sinatra::Base
3
+ %w(get post delete put options).each do |http_method|
4
+ send(http_method, '/responses/*') do |name|
5
+ body, query_string = Rack::Utils.unescape(request.body.read.to_s), request.query_string
6
+
7
+ options = {:body => body,
8
+ :http_method => http_method,
9
+ :endpoint => name,
10
+ :params => request.params,
11
+ :headers => extract_http_headers(env)}
12
+ begin
13
+ record = MockResponse.find(options)
14
+ rescue ServerResponseNotFound
15
+ record = MockResponse.find_default(options)
16
+ end
17
+
18
+ synchronize do
19
+ tracked_requests(record.response_id) << request.dup
20
+ end
21
+
22
+
23
+ send_response(record, body, request, query_string)
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,41 @@
1
+ module Mirage
2
+ class Server < Sinatra::Base
3
+ get '/templates/:id/preview' do
4
+ send_response(MockResponse.find_by_id(response_id), '', {}, '')
5
+ end
6
+
7
+ delete '/templates/:id' do
8
+ synchronize do
9
+ MockResponse.delete(response_id)
10
+ REQUESTS.delete(response_id)
11
+ end
12
+
13
+ 200
14
+ end
15
+
16
+ put '/templates/*' do |name|
17
+ content_type :json
18
+ mock_response = synchronize do
19
+ MockResponse.new(name, JSON.parse(request.body.read))
20
+ end
21
+
22
+ mock_response.requests_url = request.url.gsub("/templates/#{name}", "/requests/#{mock_response.response_id}")
23
+ {:id => mock_response.response_id}.to_json
24
+ end
25
+
26
+
27
+ delete '/templates' do
28
+ synchronize do
29
+ REQUESTS.clear
30
+ MockResponse.delete_all
31
+ end
32
+
33
+ 200
34
+ end
35
+
36
+ get '/templates/:id' do
37
+ MockResponse.find_by_id(response_id).raw
38
+ end
39
+
40
+ end
41
+ end
data/server/server.rb CHANGED
@@ -1,184 +1,10 @@
1
1
  require 'sinatra'
2
2
  require 'helpers'
3
3
  require 'base64'
4
+ require 'routes'
5
+ require 'errors'
4
6
  module Mirage
5
-
6
7
  class Server < Sinatra::Base
7
-
8
- REQUESTS = {}
9
-
10
8
  helpers Helpers::TemplateRequirements, Helpers::HttpHeaders
11
-
12
- put '/templates/*' do |name|
13
- content_type :json
14
- mock_response = synchronize do
15
- MockResponse.new(name, JSON.parse(request.body.read))
16
- end
17
-
18
- mock_response.requests_url = request.url.gsub("/templates/#{name}", "/requests/#{mock_response.response_id}")
19
- {:id => mock_response.response_id}.to_json
20
- end
21
-
22
- %w(get post delete put options).each do |http_method|
23
- send(http_method, '/responses/*') do |name|
24
- body, query_string = Rack::Utils.unescape(request.body.read.to_s), request.query_string
25
-
26
- options = {:body => body,
27
- :http_method => http_method,
28
- :endpoint => name,
29
- :params => request.params,
30
- :headers => extract_http_headers(env)}
31
- begin
32
- record = MockResponse.find(options)
33
- rescue ServerResponseNotFound
34
- record = MockResponse.find_default(options)
35
- end
36
-
37
- synchronize do
38
- REQUESTS[record.response_id] = request.dup
39
- end
40
-
41
-
42
- send_response(record, body, request, query_string)
43
- end
44
- end
45
-
46
- get '/templates/:id/preview' do
47
- send_response(MockResponse.find_by_id(response_id), '', {}, '')
48
- end
49
-
50
- delete '/templates/:id' do
51
- synchronize do
52
- MockResponse.delete(response_id)
53
- REQUESTS.delete(response_id)
54
- end
55
-
56
- 200
57
- end
58
-
59
- delete '/requests' do
60
- synchronize do
61
- REQUESTS.clear
62
- end
63
-
64
- 200
65
- end
66
-
67
- delete '/requests/:id' do
68
- synchronize do
69
- REQUESTS.delete(response_id)
70
- end
71
-
72
- 200
73
- end
74
-
75
- delete '/templates' do
76
- synchronize do
77
- REQUESTS.clear
78
- MockResponse.delete_all
79
- end
80
-
81
- 200
82
- end
83
-
84
- get '/templates/:id' do
85
- MockResponse.find_by_id(response_id).raw
86
- end
87
-
88
- get '/requests/:id' do
89
- content_type :json
90
- tracked_request = REQUESTS[response_id]
91
- if tracked_request
92
-
93
- tracked_request.body.rewind
94
- body = tracked_request.body.read
95
-
96
- parameters = tracked_request.params.dup.select { |key, value| key != body }
97
-
98
- {id: request.url,
99
- request_url: tracked_request.url,
100
- headers: extract_http_headers(tracked_request.env),
101
- parameters: parameters,
102
- body: body}.to_json
103
-
104
- else
105
- 404
106
- end
107
- end
108
-
109
- get '/' do
110
- haml :index
111
- end
112
-
113
-
114
- put '/defaults' do
115
- synchronize do
116
- MockResponse.delete_all
117
- if File.directory?(settings.defaults.to_s)
118
- Dir["#{settings.defaults}/**/*.rb"].each do |default|
119
- begin
120
- eval File.read(default)
121
- rescue Exception => e
122
- raise "Unable to load default responses from: #{default}"
123
- end
124
- end
125
- end
126
- end
127
- 200
128
- end
129
- #
130
- put '/backup' do
131
- synchronize do
132
- MockResponse.backup
133
- end
134
-
135
- 200
136
- end
137
-
138
-
139
- put '/' do
140
- synchronize do
141
- MockResponse.revert
142
- end
143
-
144
- 200
145
- end
146
-
147
- get '/pid' do
148
- "#{$$}"
149
- end
150
-
151
- error ServerResponseNotFound do
152
- 404
153
- end
154
-
155
- error do
156
- erb request.env['sinatra.error'].message
157
- end
158
-
159
- helpers do
160
-
161
- def synchronize &block
162
- Mutex.new.synchronize &block
163
- end
164
-
165
- def response_id
166
- params[:id].to_i
167
- end
168
-
169
- def prime &block
170
- block.call Mirage::Client.new "http://localhost:#{settings.port}"
171
- end
172
-
173
- def send_response(mock_response, body='', request={}, query_string='')
174
- sleep mock_response.response_spec['delay']
175
- content_type(mock_response.response_spec['content_type'])
176
- status mock_response.response_spec['status']
177
- headers mock_response.headers
178
- mock_response.value(body, request, query_string)
179
- end
180
-
181
-
182
- end
183
9
  end
184
10
  end
metadata CHANGED
@@ -1,167 +1,167 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mirage
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.14
4
+ version: 4.0.0.alpha1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Leon Davis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-11 00:00:00.000000000 Z
11
+ date: 2017-11-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sinatra
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ! '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ! '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: childprocess
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ! '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ! '>='
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: thor
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ! '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ! '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: ptools
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ! '>='
59
+ - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: 1.2.2
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ! '>='
66
+ - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: 1.2.2
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: httparty
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ! '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ! '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: haml
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ! '>='
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ! '>='
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: hashie
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ! '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ! '>='
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rake
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ! '>='
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ! '>='
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: jeweler
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ! '>='
129
+ - - ">="
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ! '>='
136
+ - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: sinatra-contrib
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
- - - ! '>='
143
+ - - ">="
144
144
  - !ruby/object:Gem::Version
145
145
  version: '0'
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
- - - ! '>='
150
+ - - ">="
151
151
  - !ruby/object:Gem::Version
152
152
  version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: jruby-openssl
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - ! '>='
157
+ - - ">="
158
158
  - !ruby/object:Gem::Version
159
159
  version: '0'
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - ! '>='
164
+ - - ">="
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0'
167
167
  description: Mirage aids testing of your applications by hosting mock responses so
@@ -190,10 +190,12 @@ files:
190
190
  - lib/mirage/client/template/model/common_methods.rb
191
191
  - lib/mirage/client/template/model/instance_methods.rb
192
192
  - lib/mirage/client/templates.rb
193
+ - lib/mirage/hashie/mash_ext.rb
193
194
  - lib/mirage/wait_methods.rb
194
195
  - mirage_server.rb
195
196
  - server/app.rb
196
197
  - server/binary_data_checker.rb
198
+ - server/errors.rb
197
199
  - server/extensions/hash.rb
198
200
  - server/extensions/object.rb
199
201
  - server/helpers.rb
@@ -201,6 +203,13 @@ files:
201
203
  - server/helpers/template_requirements.rb
202
204
  - server/mock_response.rb
203
205
  - server/mock_response_set.rb
206
+ - server/routes.rb
207
+ - server/routes/backup.rb
208
+ - server/routes/defaults.rb
209
+ - server/routes/pid.rb
210
+ - server/routes/requests.rb
211
+ - server/routes/responses.rb
212
+ - server/routes/templates.rb
204
213
  - server/server.rb
205
214
  - views/index.haml
206
215
  - views/response.haml
@@ -208,38 +217,31 @@ homepage: https://github.com/lashd/mirage
208
217
  licenses:
209
218
  - MIT
210
219
  metadata: {}
211
- post_install_message: ! '
220
+ post_install_message: |2
212
221
 
213
222
  ===============================================================================
214
-
215
223
  Mirage v3:
216
224
 
217
-
218
225
  Mirage has just gone up a major version from 2 to 3. If your project uses
219
-
220
226
  a previous version take a look at https://github.com/lashd/mirage to see
221
-
222
- what''s changed
223
-
227
+ what's changed
224
228
  ===============================================================================
225
-
226
- '
227
229
  rdoc_options: []
228
230
  require_paths:
229
231
  - lib
230
232
  required_ruby_version: !ruby/object:Gem::Requirement
231
233
  requirements:
232
- - - ! '>='
234
+ - - ">="
233
235
  - !ruby/object:Gem::Version
234
236
  version: '0'
235
237
  required_rubygems_version: !ruby/object:Gem::Requirement
236
238
  requirements:
237
- - - ! '>='
239
+ - - ">"
238
240
  - !ruby/object:Gem::Version
239
- version: '0'
241
+ version: 1.3.1
240
242
  requirements: []
241
243
  rubyforge_project:
242
- rubygems_version: 2.4.8
244
+ rubygems_version: 2.6.11
243
245
  signing_key:
244
246
  specification_version: 4
245
247
  summary: Mirage is a easy mock server for testing your applications