exceptionally 1.0.1 → 1.1.0

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.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -2
  3. data/lib/exceptionally/handler.rb +5 -3
  4. data/lib/exceptionally/version.rb +1 -1
  5. data/lib/exceptionally.rb +9 -0
  6. data/{test → spec}/dummy/app/assets/javascripts/application.js +1 -1
  7. data/{test → spec}/dummy/app/assets/stylesheets/application.css +5 -3
  8. data/{test → spec}/dummy/app/controllers/application_controller.rb +0 -0
  9. data/{test → spec}/dummy/app/helpers/application_helper.rb +0 -0
  10. data/spec/dummy/app/views/layouts/application.html.erb +13 -0
  11. data/{test → spec}/dummy/bin/bundle +0 -0
  12. data/{test → spec}/dummy/bin/rails +0 -0
  13. data/{test → spec}/dummy/bin/rake +0 -0
  14. data/spec/dummy/config/application.rb +12 -0
  15. data/{test → spec}/dummy/config/boot.rb +1 -1
  16. data/spec/dummy/config/database.yml +20 -0
  17. data/{test → spec}/dummy/config/environment.rb +1 -1
  18. data/{test → spec}/dummy/config/environments/development.rb +10 -5
  19. data/{test → spec}/dummy/config/environments/production.rb +8 -10
  20. data/{test → spec}/dummy/config/environments/test.rb +6 -8
  21. data/spec/dummy/config/initializers/assets.rb +8 -0
  22. data/{test → spec}/dummy/config/initializers/backtrace_silencers.rb +0 -0
  23. data/spec/dummy/config/initializers/cookies_serializer.rb +3 -0
  24. data/{test → spec}/dummy/config/initializers/filter_parameter_logging.rb +0 -0
  25. data/{test → spec}/dummy/config/initializers/inflections.rb +0 -0
  26. data/{test → spec}/dummy/config/initializers/mime_types.rb +0 -1
  27. data/spec/dummy/config/initializers/session_store.rb +3 -0
  28. data/{test → spec}/dummy/config/initializers/wrap_parameters.rb +0 -0
  29. data/{test → spec}/dummy/config/locales/en.yml +0 -0
  30. data/spec/dummy/config/routes.rb +3 -0
  31. data/spec/dummy/config/secrets.yml +22 -0
  32. data/{test → spec}/dummy/config.ru +0 -0
  33. data/spec/dummy/log/test.log +13013 -0
  34. data/{test → spec}/dummy/public/404.html +20 -11
  35. data/{test → spec}/dummy/public/422.html +20 -11
  36. data/{test → spec}/dummy/public/500.html +19 -10
  37. data/{test → spec}/dummy/public/favicon.ico +0 -0
  38. data/spec/dummy/version.rb +3 -0
  39. data/spec/exceptionally/config_spec.rb +11 -0
  40. data/spec/exceptionally/controller_spec.rb +45 -0
  41. data/spec/exceptionally/handler_spec.rb +89 -0
  42. data/spec/spec_helper.rb +26 -0
  43. metadata +132 -70
  44. data/Rakefile +0 -32
  45. data/lib/tasks/exceptionally_tasks.rake +0 -4
  46. data/test/dummy/README.rdoc +0 -28
  47. data/test/dummy/Rakefile +0 -6
  48. data/test/dummy/app/views/layouts/application.html.erb +0 -14
  49. data/test/dummy/config/application.rb +0 -23
  50. data/test/dummy/config/database.yml +0 -25
  51. data/test/dummy/config/initializers/secret_token.rb +0 -12
  52. data/test/dummy/config/initializers/session_store.rb +0 -3
  53. data/test/dummy/config/routes.rb +0 -56
  54. data/test/exceptionally_test.rb +0 -7
  55. data/test/test_helper.rb +0 -15
@@ -2,17 +2,23 @@
2
2
  <html>
3
3
  <head>
4
4
  <title>The page you were looking for doesn't exist (404)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
5
6
  <style>
6
7
  body {
7
8
  background-color: #EFEFEF;
8
9
  color: #2E2F30;
9
10
  text-align: center;
10
11
  font-family: arial, sans-serif;
12
+ margin: 0;
11
13
  }
12
14
 
13
15
  div.dialog {
14
- width: 25em;
15
- margin: 4em auto 0 auto;
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
16
22
  border: 1px solid #CCC;
17
23
  border-right-color: #999;
18
24
  border-left-color: #999;
@@ -21,7 +27,8 @@
21
27
  border-top-left-radius: 9px;
22
28
  border-top-right-radius: 9px;
23
29
  background-color: white;
24
- padding: 7px 4em 0 4em;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
25
32
  }
26
33
 
27
34
  h1 {
@@ -30,19 +37,19 @@
30
37
  line-height: 1.5em;
31
38
  }
32
39
 
33
- body > p {
34
- width: 33em;
35
- margin: 0 auto 1em;
36
- padding: 1em 0;
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
37
43
  background-color: #F7F7F7;
38
44
  border: 1px solid #CCC;
39
45
  border-right-color: #999;
46
+ border-left-color: #999;
40
47
  border-bottom-color: #999;
41
48
  border-bottom-left-radius: 4px;
42
49
  border-bottom-right-radius: 4px;
43
50
  border-top-color: #DADADA;
44
51
  color: #666;
45
- box-shadow:0 3px 8px rgba(50, 50, 50, 0.17);
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
46
53
  }
47
54
  </style>
48
55
  </head>
@@ -50,9 +57,11 @@
50
57
  <body>
51
58
  <!-- This file lives in public/404.html -->
52
59
  <div class="dialog">
53
- <h1>The page you were looking for doesn't exist.</h1>
54
- <p>You may have mistyped the address or the page may have moved.</p>
60
+ <div>
61
+ <h1>The page you were looking for doesn't exist.</h1>
62
+ <p>You may have mistyped the address or the page may have moved.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
55
65
  </div>
56
- <p>If you are the application owner check the logs for more information.</p>
57
66
  </body>
58
67
  </html>
@@ -2,17 +2,23 @@
2
2
  <html>
3
3
  <head>
4
4
  <title>The change you wanted was rejected (422)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
5
6
  <style>
6
7
  body {
7
8
  background-color: #EFEFEF;
8
9
  color: #2E2F30;
9
10
  text-align: center;
10
11
  font-family: arial, sans-serif;
12
+ margin: 0;
11
13
  }
12
14
 
13
15
  div.dialog {
14
- width: 25em;
15
- margin: 4em auto 0 auto;
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
16
22
  border: 1px solid #CCC;
17
23
  border-right-color: #999;
18
24
  border-left-color: #999;
@@ -21,7 +27,8 @@
21
27
  border-top-left-radius: 9px;
22
28
  border-top-right-radius: 9px;
23
29
  background-color: white;
24
- padding: 7px 4em 0 4em;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
25
32
  }
26
33
 
27
34
  h1 {
@@ -30,19 +37,19 @@
30
37
  line-height: 1.5em;
31
38
  }
32
39
 
33
- body > p {
34
- width: 33em;
35
- margin: 0 auto 1em;
36
- padding: 1em 0;
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
37
43
  background-color: #F7F7F7;
38
44
  border: 1px solid #CCC;
39
45
  border-right-color: #999;
46
+ border-left-color: #999;
40
47
  border-bottom-color: #999;
41
48
  border-bottom-left-radius: 4px;
42
49
  border-bottom-right-radius: 4px;
43
50
  border-top-color: #DADADA;
44
51
  color: #666;
45
- box-shadow:0 3px 8px rgba(50, 50, 50, 0.17);
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
46
53
  }
47
54
  </style>
48
55
  </head>
@@ -50,9 +57,11 @@
50
57
  <body>
51
58
  <!-- This file lives in public/422.html -->
52
59
  <div class="dialog">
53
- <h1>The change you wanted was rejected.</h1>
54
- <p>Maybe you tried to change something you didn't have access to.</p>
60
+ <div>
61
+ <h1>The change you wanted was rejected.</h1>
62
+ <p>Maybe you tried to change something you didn't have access to.</p>
63
+ </div>
64
+ <p>If you are the application owner check the logs for more information.</p>
55
65
  </div>
56
- <p>If you are the application owner check the logs for more information.</p>
57
66
  </body>
58
67
  </html>
@@ -2,17 +2,23 @@
2
2
  <html>
3
3
  <head>
4
4
  <title>We're sorry, but something went wrong (500)</title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
5
6
  <style>
6
7
  body {
7
8
  background-color: #EFEFEF;
8
9
  color: #2E2F30;
9
10
  text-align: center;
10
11
  font-family: arial, sans-serif;
12
+ margin: 0;
11
13
  }
12
14
 
13
15
  div.dialog {
14
- width: 25em;
15
- margin: 4em auto 0 auto;
16
+ width: 95%;
17
+ max-width: 33em;
18
+ margin: 4em auto 0;
19
+ }
20
+
21
+ div.dialog > div {
16
22
  border: 1px solid #CCC;
17
23
  border-right-color: #999;
18
24
  border-left-color: #999;
@@ -21,7 +27,8 @@
21
27
  border-top-left-radius: 9px;
22
28
  border-top-right-radius: 9px;
23
29
  background-color: white;
24
- padding: 7px 4em 0 4em;
30
+ padding: 7px 12% 0;
31
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
25
32
  }
26
33
 
27
34
  h1 {
@@ -30,19 +37,19 @@
30
37
  line-height: 1.5em;
31
38
  }
32
39
 
33
- body > p {
34
- width: 33em;
35
- margin: 0 auto 1em;
36
- padding: 1em 0;
40
+ div.dialog > p {
41
+ margin: 0 0 1em;
42
+ padding: 1em;
37
43
  background-color: #F7F7F7;
38
44
  border: 1px solid #CCC;
39
45
  border-right-color: #999;
46
+ border-left-color: #999;
40
47
  border-bottom-color: #999;
41
48
  border-bottom-left-radius: 4px;
42
49
  border-bottom-right-radius: 4px;
43
50
  border-top-color: #DADADA;
44
51
  color: #666;
45
- box-shadow:0 3px 8px rgba(50, 50, 50, 0.17);
52
+ box-shadow: 0 3px 8px rgba(50, 50, 50, 0.17);
46
53
  }
47
54
  </style>
48
55
  </head>
@@ -50,8 +57,10 @@
50
57
  <body>
51
58
  <!-- This file lives in public/500.html -->
52
59
  <div class="dialog">
53
- <h1>We're sorry, but something went wrong.</h1>
60
+ <div>
61
+ <h1>We're sorry, but something went wrong.</h1>
62
+ </div>
63
+ <p>If you are the application owner check the logs for more information.</p>
54
64
  </div>
55
- <p>If you are the application owner check the logs for more information.</p>
56
65
  </body>
57
66
  </html>
File without changes
@@ -0,0 +1,3 @@
1
+ module Dummy
2
+ VERSION = '0.0.1'
3
+ end
@@ -0,0 +1,11 @@
1
+ require 'spec_helper'
2
+
3
+ describe Exceptionally do
4
+ it 'saves report_errors' do
5
+ Exceptionally.report_errors = true
6
+ expect(Exceptionally.report_errors).to eq(true)
7
+
8
+ Exceptionally.report_errors = false
9
+ expect(Exceptionally.report_errors).to eq(false)
10
+ end
11
+ end
@@ -0,0 +1,45 @@
1
+ require 'spec_helper'
2
+
3
+ describe ActionController, :type => :controller do
4
+ controller do
5
+ def index
6
+ raise ArgumentError.new
7
+ end
8
+ end
9
+
10
+ before do
11
+ routes.draw { get 'index' => "anonymous#index" }
12
+ end
13
+
14
+ describe "when a controller raises an error" do
15
+ it 'returns a 500 response when a general error is raised' do
16
+ get :index
17
+ expect(response.status).to eq(500)
18
+ expect(JSON.parse(response.body)['error']).to eq('ArgumentError')
19
+ end
20
+
21
+ it 'returns a custom error message when available' do
22
+ allow(controller).to receive(:index).and_raise(ArgumentError.new('some error'))
23
+
24
+ get :index
25
+ expect(response.status).to eq(500)
26
+ expect(JSON.parse(response.body)['error']).to eq('some error')
27
+ end
28
+
29
+ it 'returns a 404 response when a record is not found' do
30
+ allow(controller).to receive(:index).and_raise(ActiveRecord::RecordNotFound.new)
31
+
32
+ get :index
33
+ expect(response.status).to eq(404)
34
+ expect(JSON.parse(response.body)['error']).to eq('ActiveRecord::RecordNotFound')
35
+ end
36
+
37
+ it 'returns a 403 response when Forbidden' do
38
+ allow(controller).to receive(:index).and_raise(Exceptionally::Forbidden.new)
39
+
40
+ get :index
41
+ expect(response.status).to eq(403)
42
+ expect(JSON.parse(response.body)['error']).to eq('Forbidden')
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,89 @@
1
+ require 'spec_helper'
2
+
3
+ describe ActionController, :type => :controller do
4
+ controller do
5
+ def index
6
+ raise Exceptionally::Error.new
7
+ end
8
+ end
9
+
10
+ before do
11
+ routes.draw { get 'index' => "anonymous#index" }
12
+ end
13
+
14
+ it 'logs 5xx errors' do
15
+ expect(Rails.logger).to receive(:error).with('500 Internal Server Error').once
16
+ expect(Rails.logger).to receive(:error).exactly(2).times
17
+ get :index
18
+ end
19
+
20
+ it 'logs 5xx errors with a custom error message' do
21
+ allow(controller).to receive(:index).and_raise(Exceptionally::BadGateway.new('some custom error'))
22
+
23
+ expect(Rails.logger).to receive(:error).with('502 Bad Gateway: some custom error').once
24
+ expect(Rails.logger).to receive(:error).exactly(2).times
25
+ get :index
26
+ end
27
+
28
+ it 'does not log 4xx errors' do
29
+ allow(controller).to receive(:index).and_raise(Exceptionally::BadRequest.new)
30
+
31
+ expect(Rails.logger).to_not receive(:error)
32
+ get :index
33
+ end
34
+
35
+ it 'calls handler before logging an error when set' do
36
+ temp_var = nil
37
+ Exceptionally::Handler.before_render do |message, status, error, params|
38
+ temp_var = message
39
+ end
40
+
41
+ get :index
42
+ expect(temp_var).to eq('Internal Server Error')
43
+ end
44
+
45
+ it 'does not call handler before logging an error when none is proved' do
46
+ temp_var = nil
47
+
48
+ get :index
49
+ expect(temp_var).to eq(nil)
50
+ end
51
+
52
+ describe 'when only Raven is defined' do
53
+ describe 'and report_errors is true' do
54
+ before do
55
+ Exceptionally.report_errors = true
56
+ end
57
+
58
+ it 'reports errors for a 500 error' do
59
+ expect(Raven).to receive(:capture_exception)
60
+ get :index
61
+ end
62
+
63
+ it 'does not report errors for a 400 error' do
64
+ allow(controller).to receive(:index).and_raise(Exceptionally::BadRequest.new)
65
+
66
+ expect(Raven).to_not receive(:capture_exception)
67
+ get :index
68
+ end
69
+
70
+ it 'does not report errors to Airbrake' do
71
+ expect(Airbrake).to receive(:respond_to?).at_least(:once)
72
+ expect(Airbrake).to_not receive(:notify)
73
+
74
+ get :index
75
+ end
76
+ end
77
+
78
+ describe 'and report_errors is false' do
79
+ before do
80
+ Exceptionally.report_errors = false
81
+ end
82
+
83
+ it 'does not report errors for a 500 error' do
84
+ expect(Raven).to_not receive(:capture_exception)
85
+ get :index
86
+ end
87
+ end
88
+ end
89
+ end
@@ -0,0 +1,26 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+
3
+ ENV['RAILS_ENV'] ||= 'test'
4
+
5
+ require 'rails'
6
+ require 'active_record'
7
+ require 'action_view'
8
+ require 'action_controller'
9
+ require 'nulldb_rspec'
10
+ require 'dummy/config/environment'
11
+ require 'rspec/rails'
12
+
13
+ require 'exceptionally'
14
+
15
+ RSpec.configure do |c|
16
+ c.infer_base_class_for_anonymous_controllers = false
17
+ c.order = 'random'
18
+ end
19
+
20
+ ActiveRecord::Base.establish_connection :adapter => :nulldb
21
+
22
+ class Raven
23
+ def capture_exception(error); end
24
+ end
25
+
26
+ class Airbrake; end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exceptionally
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Neil Gupta
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-10 00:00:00.000000000 Z
11
+ date: 2015-06-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -30,6 +30,62 @@ dependencies:
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '5.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: bundler
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: rspec-rails
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ - !ruby/object:Gem::Dependency
76
+ name: activerecord-nulldb-adapter
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
33
89
  description: Exceptionally abstracts your exception logic to make raising and returning
34
90
  meaningful errors in Ruby on Rails easier.
35
91
  email: neil@metamorphium.com
@@ -39,47 +95,49 @@ extra_rdoc_files: []
39
95
  files:
40
96
  - MIT-LICENSE
41
97
  - README.md
42
- - Rakefile
43
98
  - lib/exceptionally.rb
44
99
  - lib/exceptionally/controller.rb
45
100
  - lib/exceptionally/exceptions.rb
46
101
  - lib/exceptionally/handler.rb
47
102
  - lib/exceptionally/railtie.rb
48
103
  - lib/exceptionally/version.rb
49
- - lib/tasks/exceptionally_tasks.rake
50
- - test/dummy/README.rdoc
51
- - test/dummy/Rakefile
52
- - test/dummy/app/assets/javascripts/application.js
53
- - test/dummy/app/assets/stylesheets/application.css
54
- - test/dummy/app/controllers/application_controller.rb
55
- - test/dummy/app/helpers/application_helper.rb
56
- - test/dummy/app/views/layouts/application.html.erb
57
- - test/dummy/bin/bundle
58
- - test/dummy/bin/rails
59
- - test/dummy/bin/rake
60
- - test/dummy/config.ru
61
- - test/dummy/config/application.rb
62
- - test/dummy/config/boot.rb
63
- - test/dummy/config/database.yml
64
- - test/dummy/config/environment.rb
65
- - test/dummy/config/environments/development.rb
66
- - test/dummy/config/environments/production.rb
67
- - test/dummy/config/environments/test.rb
68
- - test/dummy/config/initializers/backtrace_silencers.rb
69
- - test/dummy/config/initializers/filter_parameter_logging.rb
70
- - test/dummy/config/initializers/inflections.rb
71
- - test/dummy/config/initializers/mime_types.rb
72
- - test/dummy/config/initializers/secret_token.rb
73
- - test/dummy/config/initializers/session_store.rb
74
- - test/dummy/config/initializers/wrap_parameters.rb
75
- - test/dummy/config/locales/en.yml
76
- - test/dummy/config/routes.rb
77
- - test/dummy/public/404.html
78
- - test/dummy/public/422.html
79
- - test/dummy/public/500.html
80
- - test/dummy/public/favicon.ico
81
- - test/exceptionally_test.rb
82
- - test/test_helper.rb
104
+ - spec/dummy/app/assets/javascripts/application.js
105
+ - spec/dummy/app/assets/stylesheets/application.css
106
+ - spec/dummy/app/controllers/application_controller.rb
107
+ - spec/dummy/app/helpers/application_helper.rb
108
+ - spec/dummy/app/views/layouts/application.html.erb
109
+ - spec/dummy/bin/bundle
110
+ - spec/dummy/bin/rails
111
+ - spec/dummy/bin/rake
112
+ - spec/dummy/config.ru
113
+ - spec/dummy/config/application.rb
114
+ - spec/dummy/config/boot.rb
115
+ - spec/dummy/config/database.yml
116
+ - spec/dummy/config/environment.rb
117
+ - spec/dummy/config/environments/development.rb
118
+ - spec/dummy/config/environments/production.rb
119
+ - spec/dummy/config/environments/test.rb
120
+ - spec/dummy/config/initializers/assets.rb
121
+ - spec/dummy/config/initializers/backtrace_silencers.rb
122
+ - spec/dummy/config/initializers/cookies_serializer.rb
123
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
124
+ - spec/dummy/config/initializers/inflections.rb
125
+ - spec/dummy/config/initializers/mime_types.rb
126
+ - spec/dummy/config/initializers/session_store.rb
127
+ - spec/dummy/config/initializers/wrap_parameters.rb
128
+ - spec/dummy/config/locales/en.yml
129
+ - spec/dummy/config/routes.rb
130
+ - spec/dummy/config/secrets.yml
131
+ - spec/dummy/log/test.log
132
+ - spec/dummy/public/404.html
133
+ - spec/dummy/public/422.html
134
+ - spec/dummy/public/500.html
135
+ - spec/dummy/public/favicon.ico
136
+ - spec/dummy/version.rb
137
+ - spec/exceptionally/config_spec.rb
138
+ - spec/exceptionally/controller_spec.rb
139
+ - spec/exceptionally/handler_spec.rb
140
+ - spec/spec_helper.rb
83
141
  homepage: https://github.com/neilgupta/exceptionally
84
142
  licenses:
85
143
  - MIT
@@ -105,37 +163,41 @@ signing_key:
105
163
  specification_version: 4
106
164
  summary: Exceptionally simple Rails Exception library
107
165
  test_files:
108
- - test/dummy/app/assets/javascripts/application.js
109
- - test/dummy/app/assets/stylesheets/application.css
110
- - test/dummy/app/controllers/application_controller.rb
111
- - test/dummy/app/helpers/application_helper.rb
112
- - test/dummy/app/views/layouts/application.html.erb
113
- - test/dummy/bin/bundle
114
- - test/dummy/bin/rails
115
- - test/dummy/bin/rake
116
- - test/dummy/config/application.rb
117
- - test/dummy/config/boot.rb
118
- - test/dummy/config/database.yml
119
- - test/dummy/config/environment.rb
120
- - test/dummy/config/environments/development.rb
121
- - test/dummy/config/environments/production.rb
122
- - test/dummy/config/environments/test.rb
123
- - test/dummy/config/initializers/backtrace_silencers.rb
124
- - test/dummy/config/initializers/filter_parameter_logging.rb
125
- - test/dummy/config/initializers/inflections.rb
126
- - test/dummy/config/initializers/mime_types.rb
127
- - test/dummy/config/initializers/secret_token.rb
128
- - test/dummy/config/initializers/session_store.rb
129
- - test/dummy/config/initializers/wrap_parameters.rb
130
- - test/dummy/config/locales/en.yml
131
- - test/dummy/config/routes.rb
132
- - test/dummy/config.ru
133
- - test/dummy/public/404.html
134
- - test/dummy/public/422.html
135
- - test/dummy/public/500.html
136
- - test/dummy/public/favicon.ico
137
- - test/dummy/Rakefile
138
- - test/dummy/README.rdoc
139
- - test/exceptionally_test.rb
140
- - test/test_helper.rb
166
+ - spec/dummy/app/assets/javascripts/application.js
167
+ - spec/dummy/app/assets/stylesheets/application.css
168
+ - spec/dummy/app/controllers/application_controller.rb
169
+ - spec/dummy/app/helpers/application_helper.rb
170
+ - spec/dummy/app/views/layouts/application.html.erb
171
+ - spec/dummy/bin/bundle
172
+ - spec/dummy/bin/rails
173
+ - spec/dummy/bin/rake
174
+ - spec/dummy/config/application.rb
175
+ - spec/dummy/config/boot.rb
176
+ - spec/dummy/config/database.yml
177
+ - spec/dummy/config/environment.rb
178
+ - spec/dummy/config/environments/development.rb
179
+ - spec/dummy/config/environments/production.rb
180
+ - spec/dummy/config/environments/test.rb
181
+ - spec/dummy/config/initializers/assets.rb
182
+ - spec/dummy/config/initializers/backtrace_silencers.rb
183
+ - spec/dummy/config/initializers/cookies_serializer.rb
184
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
185
+ - spec/dummy/config/initializers/inflections.rb
186
+ - spec/dummy/config/initializers/mime_types.rb
187
+ - spec/dummy/config/initializers/session_store.rb
188
+ - spec/dummy/config/initializers/wrap_parameters.rb
189
+ - spec/dummy/config/locales/en.yml
190
+ - spec/dummy/config/routes.rb
191
+ - spec/dummy/config/secrets.yml
192
+ - spec/dummy/config.ru
193
+ - spec/dummy/log/test.log
194
+ - spec/dummy/public/404.html
195
+ - spec/dummy/public/422.html
196
+ - spec/dummy/public/500.html
197
+ - spec/dummy/public/favicon.ico
198
+ - spec/dummy/version.rb
199
+ - spec/exceptionally/config_spec.rb
200
+ - spec/exceptionally/controller_spec.rb
201
+ - spec/exceptionally/handler_spec.rb
202
+ - spec/spec_helper.rb
141
203
  has_rdoc: