app_status 1.2.0 → 2.0.0.pre.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -10,13 +10,13 @@ RSpec::Matchers.define :have_content_type do |expected|
10
10
  extract_content_type(actual) == expected
11
11
  end
12
12
 
13
- failure_message_for_should do |actual|
13
+ failure_message do |actual|
14
14
  "expected that page's content type would be '#{expected}', but was '#{extract_content_type(actual)}'"
15
15
  end
16
16
 
17
17
  end
18
18
 
19
- describe "status" do
19
+ describe "status", type: :feature do
20
20
 
21
21
  before(:each) do
22
22
  AppStatus::CheckCollection.clear_checks!
@@ -31,30 +31,6 @@ describe "status" do
31
31
  page.should have_content_type('application/json')
32
32
  end
33
33
 
34
- describe "html page" do
35
-
36
- it "is available at status.html" do
37
- visit '/status.html'
38
- page.should have_content_type('text/html')
39
- end
40
-
41
- it "is available at /status/index.html" do
42
- visit '/status/index.html'
43
- page.should have_content_type('text/html')
44
- end
45
-
46
- it "renders in the main application's default layout" do
47
- visit '/status.html'
48
- page.title.should eq 'Dummy'
49
- end
50
-
51
- it "doesn't break route urls in main layout" do
52
- visit '/status.html'
53
- page.find('#widget_menu').should have_content('Widgets are at http://www.example.com/widgets.')
54
- end
55
-
56
- end
57
-
58
34
  describe "json endpoint" do
59
35
 
60
36
  it "is available at status.json" do
@@ -84,7 +60,15 @@ describe "status" do
84
60
  data['status_code'].should eq 0
85
61
  data['checks']['some_service']['status'].should eq 'ok'
86
62
  data['checks']['some_service']['details'].should eq 'foo'
63
+ data['checks']['some_service']['description'].should eq nil
87
64
  end
88
65
 
66
+ it "may include check descriptions" do
67
+ visit '/status.json?descriptions=1'
68
+ page.should have_content_type('application/json')
69
+ data = JSON.parse(page.body)
70
+
71
+ data['checks']['some_service']['description'].should eq 'more info'
72
+ end
89
73
  end
90
74
  end
@@ -0,0 +1,71 @@
1
+ require 'spec_helper'
2
+ require 'app_status/checks/ruby_version'
3
+
4
+ RSpec.describe AppStatus::Checks::RubyVersion, type: :model do
5
+ let(:subject) { described_class }
6
+ let(:actual_ruby_version) { '2.4.1' }
7
+ let(:other_ruby_version) { '2.5.0' }
8
+ before(:each) do
9
+ stub_const('RUBY_VERSION', actual_ruby_version)
10
+ end
11
+
12
+ describe '.install!' do
13
+ after(:each) do
14
+ AppStatus::CheckCollection.clear_checks!
15
+ end
16
+
17
+ it 'should add a ruby_version check to AppStatus::CheckCollection' do
18
+ # add to list of checks
19
+ AppStatus::Checks::RubyVersion.install!(expected_version: actual_ruby_version)
20
+
21
+ # evaluate the checks which have been added
22
+ checks = AppStatus::CheckCollection.new
23
+ checks.evaluate!
24
+
25
+ # look at results
26
+ results = checks.as_hash
27
+ expect(results['checks'].keys).to include('ruby_version')
28
+ end
29
+
30
+ it 'should pass optional parameter along to .check' do
31
+ AppStatus::Checks::RubyVersion.install!(expected_version: other_ruby_version)
32
+
33
+ expect(AppStatus::Checks::RubyVersion).to(
34
+ receive(:check)
35
+ .with(expected_version: other_ruby_version)
36
+ )
37
+
38
+ checks = AppStatus::CheckCollection.new
39
+ checks.evaluate!
40
+ end
41
+ end
42
+
43
+ describe '.check' do
44
+ it 'should be :ok when RUBY_VERSION matches expected_version' do
45
+ result = subject.check(expected_version: actual_ruby_version)
46
+ expect(result).to(
47
+ eq([:ok, "expected: #{actual_ruby_version}, actual: #{actual_ruby_version}"])
48
+ )
49
+ end
50
+
51
+ it 'should be :critical when RUBY_VERSION does not match expected_version' do
52
+ result = subject.check(expected_version: other_ruby_version)
53
+ expect(result).to(
54
+ eq([:critical, "expected: #{other_ruby_version}, actual: #{actual_ruby_version}"])
55
+ )
56
+ end
57
+
58
+ it 'should read from .ruby-version if expected_version is not specified' do
59
+ expect(File).to(
60
+ receive(:read)
61
+ .with(Rails.root.join('.ruby-version'))
62
+ .and_return(actual_ruby_version)
63
+ )
64
+
65
+ result = subject.check
66
+ expect(result).to(
67
+ eq([:ok, "expected: #{actual_ruby_version}, actual: #{actual_ruby_version}"])
68
+ )
69
+ end
70
+ end
71
+ end
@@ -35,7 +35,7 @@ describe AppStatus::CheckCollection do
35
35
  it "should raise an error if name is not supplied" do
36
36
  expect {
37
37
  AppStatus::CheckCollection.add_check
38
- }.to raise_error(ArgumentError, "wrong number of arguments (0 for 1)")
38
+ }.to raise_error(ArgumentError)
39
39
  end
40
40
 
41
41
  it "should raise an error if block is not supplied" do
@@ -147,45 +147,68 @@ describe AppStatus::CheckCollection do
147
147
  c = AppStatus::CheckCollection.new
148
148
  Timecop.freeze('2013-10-05T12:00:00Z') { c.evaluate! }
149
149
 
150
- c.as_json.should eq({
150
+ expect(c.as_json).to match({
151
151
  "status" => :unknown,
152
152
  "status_code" => 3,
153
- "ms" => instance_of(Fixnum),
153
+ "ms" => an_instance_of(Fixnum),
154
154
  "finished" => "2013-10-05T12:00:00Z",
155
155
  "checks" => {
156
156
  "test1" => {
157
157
  "status" => :ok,
158
158
  "status_code" => 0,
159
159
  "details" => "looks good",
160
- "ms" => instance_of(Fixnum)
160
+ "ms" => an_instance_of(Fixnum)
161
161
  },
162
162
  "test2" => {
163
163
  "status" => :unknown,
164
164
  "status_code" => 3,
165
165
  "details" => "Check returned invalid status 'huh'. invalid",
166
- "ms" => instance_of(Fixnum)
166
+ "ms" => an_instance_of(Fixnum)
167
167
  },
168
168
  "test3" => {
169
169
  "status" => :warning,
170
170
  "status_code" => 1,
171
171
  "details" => "not good",
172
- "ms" => instance_of(Fixnum)
172
+ "ms" => an_instance_of(Fixnum)
173
173
  },
174
174
  "test4" => {
175
175
  "status" => :critical,
176
176
  "status_code" => 2,
177
177
  "details" => "on fire",
178
- "ms" => instance_of(Fixnum)
178
+ "ms" => an_instance_of(Fixnum)
179
179
  },
180
180
  "test5" => {
181
181
  "status" => :unknown,
182
182
  "status_code" => 3,
183
183
  "details" => "no idea",
184
- "ms" => instance_of(Fixnum)
184
+ "ms" => an_instance_of(Fixnum)
185
185
  }
186
186
  }
187
187
  })
188
188
  end
189
189
 
190
+ it "should include optionally include descriptions" do
191
+ AppStatus::CheckCollection.configure do |c|
192
+ c.add_check('test1') { [:ok, 'looks good'] }
193
+ c.add_description 'test1', 'test1 description'
194
+
195
+ c.add_check('test2') { [:ok, 'looks good'] }
196
+ c.add_description 'test2', 'test2 description'
197
+ end
198
+
199
+ c = AppStatus::CheckCollection.new
200
+ c.evaluate!
201
+
202
+ result = c.as_json(include_descriptions: true)
203
+
204
+ expect(
205
+ result['checks']['test1']['description']
206
+ ).to eq 'test1 description'
207
+
208
+ expect(
209
+ result['checks']['test2']['description']
210
+ ).to eq 'test2 description'
211
+ end
212
+
190
213
  end
191
214
  end
@@ -2,7 +2,6 @@ ENV['RAILS_ENV'] ||= 'test'
2
2
 
3
3
  require File.expand_path("../dummy/config/environment.rb", __FILE__)
4
4
  require 'rspec/rails'
5
- require 'rspec/autorun'
6
5
  require 'timecop'
7
6
  require 'capybara/rspec'
8
7
 
@@ -12,4 +11,5 @@ RSpec.configure do |config|
12
11
  config.mock_with :rspec
13
12
  config.infer_base_class_for_anonymous_controllers = false
14
13
  config.order = "random"
14
+ config.expect_with(:rspec) { |c| c.syntax = [:should, :expect] }
15
15
  end
metadata CHANGED
@@ -1,153 +1,108 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: app_status
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
5
- prerelease:
4
+ version: 2.0.0.pre.alpha.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Alex Dean
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-10-14 00:00:00.000000000 Z
11
+ date: 2018-02-16 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: '0'
19
+ version: '4.0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
- version: '0'
30
- - !ruby/object:Gem::Dependency
31
- name: kramdown
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: '0'
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
26
+ version: '4.0'
46
27
  - !ruby/object:Gem::Dependency
47
28
  name: rspec
48
29
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
30
  requirements:
51
- - - ! '>='
31
+ - - "~>"
52
32
  - !ruby/object:Gem::Version
53
- version: '0'
33
+ version: 3.7.0
54
34
  type: :development
55
35
  prerelease: false
56
36
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
37
  requirements:
59
- - - ! '>='
38
+ - - "~>"
60
39
  - !ruby/object:Gem::Version
61
- version: '0'
40
+ version: 3.7.0
62
41
  - !ruby/object:Gem::Dependency
63
42
  name: rspec-rails
64
43
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
44
  requirements:
67
- - - ~>
45
+ - - "~>"
68
46
  - !ruby/object:Gem::Version
69
- version: '2.6'
47
+ version: 3.7.2
70
48
  type: :development
71
49
  prerelease: false
72
50
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
51
  requirements:
75
- - - ~>
52
+ - - "~>"
76
53
  - !ruby/object:Gem::Version
77
- version: '2.6'
54
+ version: 3.7.2
78
55
  - !ruby/object:Gem::Dependency
79
56
  name: timecop
80
57
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
58
  requirements:
83
- - - ! '>='
59
+ - - "~>"
84
60
  - !ruby/object:Gem::Version
85
- version: '0'
61
+ version: 0.9.1
86
62
  type: :development
87
63
  prerelease: false
88
64
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
65
  requirements:
91
- - - ! '>='
66
+ - - "~>"
92
67
  - !ruby/object:Gem::Version
93
- version: '0'
68
+ version: 0.9.1
94
69
  - !ruby/object:Gem::Dependency
95
70
  name: capybara
96
71
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
72
  requirements:
99
- - - ! '>='
73
+ - - "~>"
100
74
  - !ruby/object:Gem::Version
101
- version: '0'
75
+ version: '2.14'
102
76
  type: :development
103
77
  prerelease: false
104
78
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
79
  requirements:
107
- - - ! '>='
80
+ - - "~>"
108
81
  - !ruby/object:Gem::Version
109
- version: '0'
82
+ version: '2.14'
110
83
  description: AppStatus provides a URL which is easily consumable by Nagios or other
111
84
  monitoring tools.
112
85
  email:
113
- - alex@crackpot.org
86
+ - github@mostlyalex.com
114
87
  executables: []
115
88
  extensions: []
116
89
  extra_rdoc_files: []
117
90
  files:
118
- - app/assets/javascripts/app_status/application.js
119
- - app/assets/stylesheets/app_status/application.css
91
+ - MIT-LICENSE
92
+ - README.md
93
+ - Rakefile
120
94
  - app/controllers/app_status/application_controller.rb
121
95
  - app/controllers/app_status/status_controller.rb
122
- - app/helpers/app_status/application_helper.rb
123
96
  - app/models/app_status/check_collection.rb
124
97
  - app/models/app_status/check_item.rb
125
- - app/views/app_status/status/index.html.erb
126
- - bin/autospec
127
- - bin/erubis
128
- - bin/haml
129
- - bin/htmldiff
130
- - bin/kramdown
131
- - bin/ldiff
132
- - bin/nokogiri
133
- - bin/rackup
134
- - bin/rails
135
- - bin/rake
136
- - bin/rdoc
137
- - bin/ri
138
- - bin/rspec
139
- - bin/sprockets
140
- - bin/thor
141
- - bin/tilt
142
- - bin/tt
143
98
  - config/routes.rb
99
+ - lib/app_status.rb
100
+ - lib/app_status/checks/ruby_version.rb
144
101
  - lib/app_status/engine.rb
145
102
  - lib/app_status/version.rb
146
- - lib/app_status.rb
147
103
  - lib/tasks/app_status_tasks.rb
148
- - MIT-LICENSE
149
- - Rakefile
150
- - README.md
104
+ - spec/dummy/README.rdoc
105
+ - spec/dummy/Rakefile
151
106
  - spec/dummy/app/assets/javascripts/application.js
152
107
  - spec/dummy/app/assets/stylesheets/application.css
153
108
  - spec/dummy/app/controllers/application_controller.rb
@@ -159,6 +114,7 @@ files:
159
114
  - spec/dummy/app/views/widgets/index.html.erb
160
115
  - spec/dummy/app/views/widgets/new.html.erb
161
116
  - spec/dummy/app/views/widgets/show.html.erb
117
+ - spec/dummy/config.ru
162
118
  - spec/dummy/config/application.rb
163
119
  - spec/dummy/config/boot.rb
164
120
  - spec/dummy/config/database.yml
@@ -175,15 +131,12 @@ files:
175
131
  - spec/dummy/config/initializers/wrap_parameters.rb
176
132
  - spec/dummy/config/locales/en.yml
177
133
  - spec/dummy/config/routes.rb
178
- - spec/dummy/config.ru
179
134
  - spec/dummy/log/development.log
180
135
  - spec/dummy/log/test.log
181
136
  - spec/dummy/public/404.html
182
137
  - spec/dummy/public/422.html
183
138
  - spec/dummy/public/500.html
184
139
  - spec/dummy/public/favicon.ico
185
- - spec/dummy/Rakefile
186
- - spec/dummy/README.rdoc
187
140
  - spec/dummy/script/rails
188
141
  - spec/dummy/tmp/cache/assets/CA5/160/sprockets%2Fc4b6dd696758a9c186897a8c25615778
189
142
  - spec/dummy/tmp/cache/assets/CB2/070/sprockets%2Fe1b30e44248fc0395505c899c0f2357e
@@ -202,92 +155,87 @@ files:
202
155
  - spec/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af
203
156
  - spec/dummy/tmp/cache/assets/E07/FD0/sprockets%2Fb3d7aafd7ce063e022cd29e7ccb898f9
204
157
  - spec/features/app_status_features_spec.rb
158
+ - spec/lib/app_status/checks/ruby_version_spec.rb
205
159
  - spec/models/check_collection_spec.rb
206
160
  - spec/spec_helper.rb
207
161
  homepage: http://github.com/alexdean/app_status
208
162
  licenses: []
163
+ metadata: {}
209
164
  post_install_message:
210
165
  rdoc_options: []
211
166
  require_paths:
212
167
  - lib
213
168
  required_ruby_version: !ruby/object:Gem::Requirement
214
- none: false
215
169
  requirements:
216
- - - ! '>='
170
+ - - ">="
217
171
  - !ruby/object:Gem::Version
218
172
  version: '0'
219
- segments:
220
- - 0
221
- hash: -3960571408936906561
222
173
  required_rubygems_version: !ruby/object:Gem::Requirement
223
- none: false
224
174
  requirements:
225
- - - ! '>='
175
+ - - ">"
226
176
  - !ruby/object:Gem::Version
227
- version: '0'
228
- segments:
229
- - 0
230
- hash: -3960571408936906561
177
+ version: 1.3.1
231
178
  requirements: []
232
179
  rubyforge_project:
233
- rubygems_version: 1.8.24
180
+ rubygems_version: 2.5.1
234
181
  signing_key:
235
- specification_version: 3
182
+ specification_version: 4
236
183
  summary: AppStatus is a Rails engine for exposing app data to Nagios.
237
184
  test_files:
238
- - spec/dummy/app/assets/javascripts/application.js
239
- - spec/dummy/app/assets/stylesheets/application.css
185
+ - spec/spec_helper.rb
240
186
  - spec/dummy/app/controllers/application_controller.rb
241
187
  - spec/dummy/app/controllers/widgets_controller.rb
242
- - spec/dummy/app/helpers/application_helper.rb
243
188
  - spec/dummy/app/views/layouts/application.html.erb
244
- - spec/dummy/app/views/widgets/_form.html.erb
245
- - spec/dummy/app/views/widgets/edit.html.erb
246
189
  - spec/dummy/app/views/widgets/index.html.erb
247
- - spec/dummy/app/views/widgets/new.html.erb
190
+ - spec/dummy/app/views/widgets/edit.html.erb
248
191
  - spec/dummy/app/views/widgets/show.html.erb
249
- - spec/dummy/config/application.rb
250
- - spec/dummy/config/boot.rb
251
- - spec/dummy/config/database.yml
252
- - spec/dummy/config/environment.rb
253
- - spec/dummy/config/environments/development.rb
192
+ - spec/dummy/app/views/widgets/_form.html.erb
193
+ - spec/dummy/app/views/widgets/new.html.erb
194
+ - spec/dummy/app/assets/javascripts/application.js
195
+ - spec/dummy/app/assets/stylesheets/application.css
196
+ - spec/dummy/app/helpers/application_helper.rb
197
+ - spec/dummy/config/routes.rb
198
+ - spec/dummy/config/locales/en.yml
254
199
  - spec/dummy/config/environments/production.rb
200
+ - spec/dummy/config/environments/development.rb
255
201
  - spec/dummy/config/environments/test.rb
256
- - spec/dummy/config/initializers/app_status.rb
202
+ - spec/dummy/config/environment.rb
203
+ - spec/dummy/config/application.rb
204
+ - spec/dummy/config/database.yml
205
+ - spec/dummy/config/boot.rb
257
206
  - spec/dummy/config/initializers/backtrace_silencers.rb
258
- - spec/dummy/config/initializers/inflections.rb
259
207
  - spec/dummy/config/initializers/mime_types.rb
260
- - spec/dummy/config/initializers/secret_token.rb
261
208
  - spec/dummy/config/initializers/session_store.rb
262
209
  - spec/dummy/config/initializers/wrap_parameters.rb
263
- - spec/dummy/config/locales/en.yml
264
- - spec/dummy/config/routes.rb
210
+ - spec/dummy/config/initializers/app_status.rb
211
+ - spec/dummy/config/initializers/secret_token.rb
212
+ - spec/dummy/config/initializers/inflections.rb
265
213
  - spec/dummy/config.ru
266
- - spec/dummy/log/development.log
267
- - spec/dummy/log/test.log
268
- - spec/dummy/public/404.html
214
+ - spec/dummy/script/rails
215
+ - spec/dummy/Rakefile
216
+ - spec/dummy/public/favicon.ico
269
217
  - spec/dummy/public/422.html
270
218
  - spec/dummy/public/500.html
271
- - spec/dummy/public/favicon.ico
272
- - spec/dummy/Rakefile
273
- - spec/dummy/README.rdoc
274
- - spec/dummy/script/rails
219
+ - spec/dummy/public/404.html
220
+ - spec/dummy/log/test.log
221
+ - spec/dummy/log/development.log
222
+ - spec/dummy/tmp/cache/assets/D15/DA0/sprockets%2Fc7e74644f623ec92a443b53b8c1d19c8
223
+ - spec/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af
224
+ - spec/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994
225
+ - spec/dummy/tmp/cache/assets/DDD/460/sprockets%2Fe5b8947c2a5caf5460fecdfd48c818d5
226
+ - spec/dummy/tmp/cache/assets/DB8/430/sprockets%2Ff731c6599577d8f741f3afd2d8ed2efb
227
+ - spec/dummy/tmp/cache/assets/D3F/E00/sprockets%2Fa7629a6ce27d07753dbb05bd48098ce0
228
+ - spec/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953
275
229
  - spec/dummy/tmp/cache/assets/CA5/160/sprockets%2Fc4b6dd696758a9c186897a8c25615778
230
+ - spec/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655
276
231
  - spec/dummy/tmp/cache/assets/CB2/070/sprockets%2Fe1b30e44248fc0395505c899c0f2357e
277
232
  - spec/dummy/tmp/cache/assets/CB2/5B0/sprockets%2Fc8e423e85d0a1cb22332859990909a3f
278
- - spec/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953
279
- - spec/dummy/tmp/cache/assets/CF2/9A0/sprockets%2Fb3eee5a6a87662f428f47c908157f606
280
- - spec/dummy/tmp/cache/assets/D15/DA0/sprockets%2Fc7e74644f623ec92a443b53b8c1d19c8
233
+ - spec/dummy/tmp/cache/assets/E07/FD0/sprockets%2Fb3d7aafd7ce063e022cd29e7ccb898f9
281
234
  - spec/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705
282
- - spec/dummy/tmp/cache/assets/D3F/E00/sprockets%2Fa7629a6ce27d07753dbb05bd48098ce0
283
- - spec/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655
284
- - spec/dummy/tmp/cache/assets/D51/F30/sprockets%2Fbe466f3302fef7895aad76d05d93963d
235
+ - spec/dummy/tmp/cache/assets/CF2/9A0/sprockets%2Fb3eee5a6a87662f428f47c908157f606
285
236
  - spec/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6
286
- - spec/dummy/tmp/cache/assets/DB8/430/sprockets%2Ff731c6599577d8f741f3afd2d8ed2efb
287
- - spec/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994
288
- - spec/dummy/tmp/cache/assets/DDD/460/sprockets%2Fe5b8947c2a5caf5460fecdfd48c818d5
289
- - spec/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af
290
- - spec/dummy/tmp/cache/assets/E07/FD0/sprockets%2Fb3d7aafd7ce063e022cd29e7ccb898f9
237
+ - spec/dummy/tmp/cache/assets/D51/F30/sprockets%2Fbe466f3302fef7895aad76d05d93963d
238
+ - spec/dummy/README.rdoc
291
239
  - spec/features/app_status_features_spec.rb
292
240
  - spec/models/check_collection_spec.rb
293
- - spec/spec_helper.rb
241
+ - spec/lib/app_status/checks/ruby_version_spec.rb