exception_handler 0.4.7 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -1
  4. data/Gemfile +1 -1
  5. data/README.md +241 -92
  6. data/app/controllers/exception_handler/exception_controller.rb +13 -44
  7. data/app/helpers/exception_handler/application_helper.rb +47 -23
  8. data/app/models/exception_handler/error.rb +10 -9
  9. data/app/services/exception_handler/exception.rb +34 -0
  10. data/app/views/exception_handler/exception/show.html.erb +9 -6
  11. data/app/views/layouts/exception.html.erb +3 -3
  12. data/config/locales/en.yml +9 -0
  13. data/exception_handler.gemspec +16 -6
  14. data/lib/exception_handler.rb +67 -32
  15. data/lib/exception_handler/config.rb +49 -46
  16. data/lib/exception_handler/parse.rb +17 -17
  17. data/lib/exception_handler/parser/data.rb +57 -51
  18. data/lib/exception_handler/parser/ignore.rb +23 -23
  19. data/lib/exception_handler/version.rb +1 -1
  20. data/lib/generators/exception_handler/migration_generator.rb +17 -17
  21. data/lib/generators/exception_handler/views_generator.rb +27 -27
  22. data/spec/database.yml +3 -0
  23. data/spec/dummy/Rakefile +6 -0
  24. data/spec/dummy/app/assets/config/manifest.js +4 -0
  25. data/spec/dummy/app/assets/images/.keep +0 -0
  26. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  27. data/spec/dummy/app/assets/javascripts/cable.coffee +11 -0
  28. data/spec/dummy/app/assets/javascripts/channels/.keep +0 -0
  29. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  30. data/spec/dummy/app/channels/application_cable/channel.rb +5 -0
  31. data/spec/dummy/app/channels/application_cable/connection.rb +5 -0
  32. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  33. data/spec/dummy/app/controllers/concerns/.keep +0 -0
  34. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  35. data/spec/dummy/app/jobs/application_job.rb +2 -0
  36. data/spec/dummy/app/mailers/application_mailer.rb +4 -0
  37. data/spec/dummy/app/models/application_record.rb +3 -0
  38. data/spec/dummy/app/models/concerns/.keep +0 -0
  39. data/spec/dummy/app/views/layouts/application.html.erb +15 -0
  40. data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
  41. data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
  42. data/spec/dummy/bin/bundle +3 -0
  43. data/spec/dummy/bin/rails +4 -0
  44. data/spec/dummy/bin/rake +4 -0
  45. data/spec/dummy/bin/setup +34 -0
  46. data/spec/dummy/bin/update +29 -0
  47. data/spec/dummy/config.ru +8 -0
  48. data/spec/dummy/config/application.rb +21 -0
  49. data/spec/dummy/config/boot.rb +5 -0
  50. data/spec/dummy/config/cable.yml +10 -0
  51. data/spec/dummy/config/database.yml +25 -0
  52. data/spec/dummy/config/environment.rb +5 -0
  53. data/spec/dummy/config/environments/development.rb +62 -0
  54. data/spec/dummy/config/environments/production.rb +87 -0
  55. data/spec/dummy/config/environments/test.rb +42 -0
  56. data/spec/dummy/config/initializers/active_record_belongs_to_required_by_default.rb +6 -0
  57. data/spec/dummy/config/initializers/application_controller_renderer.rb +6 -0
  58. data/spec/dummy/config/initializers/assets.rb +11 -0
  59. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  60. data/spec/dummy/config/initializers/callback_terminator.rb +6 -0
  61. data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
  62. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  63. data/spec/dummy/config/initializers/inflections.rb +16 -0
  64. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  65. data/spec/dummy/config/initializers/per_form_csrf_tokens.rb +4 -0
  66. data/spec/dummy/config/initializers/request_forgery_protection.rb +4 -0
  67. data/spec/dummy/config/initializers/session_store.rb +3 -0
  68. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  69. data/spec/dummy/config/locales/en.yml +23 -0
  70. data/spec/dummy/config/puma.rb +47 -0
  71. data/spec/dummy/config/routes.rb +6 -0
  72. data/spec/dummy/config/secrets.yml +22 -0
  73. data/spec/dummy/lib/assets/.keep +0 -0
  74. data/spec/dummy/log/.keep +0 -0
  75. data/spec/dummy/public/404.html +67 -0
  76. data/spec/dummy/public/422.html +67 -0
  77. data/spec/dummy/public/500.html +66 -0
  78. data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
  79. data/spec/dummy/public/apple-touch-icon.png +0 -0
  80. data/spec/dummy/public/favicon.ico +0 -0
  81. data/spec/exception_handler.rb +22 -0
  82. data/spec/helpers/exception_handler/application_helper_spec.rb +42 -0
  83. data/spec/spec_helper.rb +28 -9
  84. metadata +102 -39
  85. data/readme/400.jpg +0 -0
  86. data/readme/500.jpg +0 -0
  87. data/readme/application_controller.jpg +0 -0
  88. data/readme/config.jpg +0 -0
  89. data/readme/db.jpg +0 -0
  90. data/readme/db_edit.jpg +0 -0
  91. data/readme/dev.jpg +0 -0
  92. data/readme/exception_controller.jpg +0 -0
  93. data/readme/exceptions_app.png +0 -0
  94. data/readme/layout.jpg +0 -0
  95. data/readme/parser.jpg +0 -0
  96. data/readme/rubygems.jpg +0 -0
  97. data/readme/source/screen.psd +0 -0
  98. data/readme/source/subtitle.psd +0 -0
  99. data/readme/source/title.psd +0 -0
  100. data/readme/subtitle.jpg +0 -0
  101. data/readme/title.jpg +0 -0
  102. data/readme/titles/bugs.png +0 -0
  103. data/readme/titles/contents.png +0 -0
  104. data/readme/titles/contribution.png +0 -0
  105. data/readme/titles/custom_error_pages.png +0 -0
  106. data/readme/titles/support.png +0 -0
  107. data/readme/titles/testing.png +0 -0
  108. data/readme/titles/title.psd +0 -0
  109. data/readme/view.jpg +0 -0
File without changes
File without changes
@@ -0,0 +1,22 @@
1
+ #####################################################
2
+ ## ______ ##
3
+ ## | ___ \ ##
4
+ ## | |_/ / __ _ ___ ___ ##
5
+ ## | ___ \/ _` / __|/ _ \ ##
6
+ ## | |_/ / (_| \__ \ __/ ##
7
+ ## \____/ \__,_|___/\___| ##
8
+ ## ##
9
+ #####################################################
10
+
11
+ # Should test basic setup for further specs:
12
+
13
+ # Rails env
14
+ # Config options
15
+ # Activerecord (connection)
16
+
17
+ #####################################################
18
+
19
+
20
+
21
+ #####################################################
22
+ #####################################################
@@ -0,0 +1,42 @@
1
+ #####################################################
2
+ ## _ _ _ ##
3
+ ## | | | | | | ##
4
+ ## | |_| | ___| |_ __ ___ _ __ ___ ##
5
+ ## | _ |/ _ \ | '_ \ / _ \ '__/ __| ##
6
+ ## | | | | __/ | |_) | __/ | \__ \ ##
7
+ ## \_| |_/\___|_| .__/ \___|_| |___/ ##
8
+ ## | | ##
9
+ ## |_| ##
10
+ #####################################################
11
+
12
+ # Should reside in spec/**module**/helpers
13
+ # Testing specific helpers (in this case ApplicationHelper)
14
+ # Refs...
15
+ # http://stackoverflow.com/a/12846630/1143732
16
+ # https://github.com/rspec/rspec-rails#helper-specs
17
+
18
+ #####################################################
19
+
20
+ # Needs the RSpec helper / config
21
+ require 'spec_helper'
22
+
23
+ ####
24
+
25
+ module ExceptionHandler
26
+ describe "ApplicationHelper", type: :helper do
27
+
28
+ # Defs
29
+ #let (:page) { ErrorPage.new exception, { "PATH_INFO" => "/some/path" } }
30
+
31
+ #####################################################
32
+
33
+ # "app" method
34
+ # https://www.relishapp.com/rspec/rspec-rails/v/2-0/docs/helper-specs/helper-spec
35
+ it "displays parent Rails app name" do
36
+ helper.app.should eql(Rails.application.class.parent_name)
37
+ end
38
+ end
39
+ end
40
+
41
+ #####################################################
42
+ #####################################################
@@ -1,3 +1,5 @@
1
+ #####################################################
2
+
1
3
  # This file was generated by the `rspec --init` command. Conventionally, all
2
4
  # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
3
5
  # Require this file using `require "spec_helper"` to ensure that it is only
@@ -5,26 +7,36 @@
5
7
  #
6
8
  # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
7
9
 
10
+ #####################################################
11
+
8
12
  #Coveralls
9
13
  require 'coveralls'
10
14
  Coveralls.wear!
11
15
 
12
16
  #Env
13
- ENV["RAILS_ENV"] = 'test'
17
+ #Need to generate "dummy" rails app -- BEST done with rails plugin new [[plugin_name]]
18
+ #http://stackoverflow.com/a/7472277/1143732
19
+ #http://guides.rubyonrails.org/plugins.html
20
+ ENV["RAILS_ENV"] ||= 'test'
21
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
22
+ require 'rails'
14
23
 
15
- #Rails
16
- #require 'rails'
17
- #require 'active_support'
24
+ #Files
25
+ ENGINE_RAILS_ROOT=File.join(File.dirname(__FILE__), '../')
26
+ Dir[File.join(ENGINE_RAILS_ROOT, "spec/support/**/*.rb")].each {|f| require f }
18
27
 
19
- #For Generators
20
- require "rails/generators/test_case"
21
- require "generators/exception_handler/install_generator"
28
+ ###########################################
22
29
 
30
+ #Messages
31
+ puts "Testing Against Rails #{Rails.version}"
23
32
 
33
+ #Options
34
+ config = YAML::load(IO.read(File.dirname(__FILE__) + '/database.yml'))
35
+
36
+ ###########################################
24
37
  ###########################################
25
38
 
26
39
  RSpec.configure do |config|
27
- config.treat_symbols_as_metadata_keys_with_true_values = true
28
40
  config.run_all_when_everything_filtered = true
29
41
  config.filter_run :focus
30
42
 
@@ -33,4 +45,11 @@ RSpec.configure do |config|
33
45
  # the seed, which is printed after each run.
34
46
  # --seed 1234
35
47
  config.order = 'random'
36
- end
48
+ end
49
+
50
+ ###########################################
51
+ ###########################################
52
+
53
+ require "exception_handler"
54
+
55
+ #####################################################
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exception_handler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.7
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Peck
8
- - Joe Hilton
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2015-12-05 00:00:00.000000000 Z
11
+ date: 2016-03-14 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: bundler
@@ -85,21 +84,48 @@ dependencies:
85
84
  name: rspec
86
85
  requirement: !ruby/object:Gem::Requirement
87
86
  requirements:
88
- - - ">="
87
+ - - "~>"
89
88
  - !ruby/object:Gem::Version
90
- version: '0'
89
+ version: '3.3'
91
90
  type: :development
92
91
  prerelease: false
93
92
  version_requirements: !ruby/object:Gem::Requirement
94
93
  requirements:
95
- - - ">="
94
+ - - "~>"
96
95
  - !ruby/object:Gem::Version
97
- version: '0'
96
+ version: '3.3'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec-rails
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '3.3'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '3.3'
111
+ - !ruby/object:Gem::Dependency
112
+ name: sqlite3
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 1.3.10
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 1.3.10
98
125
  description: Rails gem to create custom error pages. Captures exceptions using "exception_app"
99
126
  callback, routing to "Exception" controller, rendering the view as required.
100
127
  email:
101
128
  - rpeck@frontlineutilities.co.uk
102
- - jhilton@frontlineutilities.co.uk
103
129
  executables: []
104
130
  extensions: []
105
131
  extra_rdoc_files: []
@@ -128,8 +154,10 @@ files:
128
154
  - app/controllers/exception_handler/exception_controller.rb
129
155
  - app/helpers/exception_handler/application_helper.rb
130
156
  - app/models/exception_handler/error.rb
157
+ - app/services/exception_handler/exception.rb
131
158
  - app/views/exception_handler/exception/show.html.erb
132
159
  - app/views/layouts/exception.html.erb
160
+ - config/locales/en.yml
133
161
  - exception_handler.gemspec
134
162
  - lib/exception_handler.rb
135
163
  - lib/exception_handler/config.rb
@@ -141,33 +169,69 @@ files:
141
169
  - lib/generators/exception_handler/views_generator.rb
142
170
  - lib/generators/templates/migration.rb.erb
143
171
  - post_install_message.md
144
- - readme/400.jpg
145
- - readme/500.jpg
146
- - readme/application_controller.jpg
147
- - readme/config.jpg
148
- - readme/db.jpg
149
- - readme/db_edit.jpg
150
- - readme/dev.jpg
151
- - readme/exception_controller.jpg
152
- - readme/exceptions_app.png
153
- - readme/layout.jpg
154
- - readme/parser.jpg
155
- - readme/rubygems.jpg
156
- - readme/source/screen.psd
157
- - readme/source/subtitle.psd
158
- - readme/source/title.psd
159
- - readme/subtitle.jpg
160
- - readme/title.jpg
161
- - readme/titles/bugs.png
162
- - readme/titles/contents.png
163
- - readme/titles/contribution.png
164
- - readme/titles/custom_error_pages.png
165
- - readme/titles/support.png
166
- - readme/titles/testing.png
167
- - readme/titles/title.psd
168
- - readme/view.jpg
172
+ - spec/database.yml
173
+ - spec/dummy/Rakefile
174
+ - spec/dummy/app/assets/config/manifest.js
175
+ - spec/dummy/app/assets/images/.keep
176
+ - spec/dummy/app/assets/javascripts/application.js
177
+ - spec/dummy/app/assets/javascripts/cable.coffee
178
+ - spec/dummy/app/assets/javascripts/channels/.keep
179
+ - spec/dummy/app/assets/stylesheets/application.css
180
+ - spec/dummy/app/channels/application_cable/channel.rb
181
+ - spec/dummy/app/channels/application_cable/connection.rb
182
+ - spec/dummy/app/controllers/application_controller.rb
183
+ - spec/dummy/app/controllers/concerns/.keep
184
+ - spec/dummy/app/helpers/application_helper.rb
185
+ - spec/dummy/app/jobs/application_job.rb
186
+ - spec/dummy/app/mailers/application_mailer.rb
187
+ - spec/dummy/app/models/application_record.rb
188
+ - spec/dummy/app/models/concerns/.keep
189
+ - spec/dummy/app/views/layouts/application.html.erb
190
+ - spec/dummy/app/views/layouts/mailer.html.erb
191
+ - spec/dummy/app/views/layouts/mailer.text.erb
192
+ - spec/dummy/bin/bundle
193
+ - spec/dummy/bin/rails
194
+ - spec/dummy/bin/rake
195
+ - spec/dummy/bin/setup
196
+ - spec/dummy/bin/update
197
+ - spec/dummy/config.ru
198
+ - spec/dummy/config/application.rb
199
+ - spec/dummy/config/boot.rb
200
+ - spec/dummy/config/cable.yml
201
+ - spec/dummy/config/database.yml
202
+ - spec/dummy/config/environment.rb
203
+ - spec/dummy/config/environments/development.rb
204
+ - spec/dummy/config/environments/production.rb
205
+ - spec/dummy/config/environments/test.rb
206
+ - spec/dummy/config/initializers/active_record_belongs_to_required_by_default.rb
207
+ - spec/dummy/config/initializers/application_controller_renderer.rb
208
+ - spec/dummy/config/initializers/assets.rb
209
+ - spec/dummy/config/initializers/backtrace_silencers.rb
210
+ - spec/dummy/config/initializers/callback_terminator.rb
211
+ - spec/dummy/config/initializers/cookies_serializer.rb
212
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
213
+ - spec/dummy/config/initializers/inflections.rb
214
+ - spec/dummy/config/initializers/mime_types.rb
215
+ - spec/dummy/config/initializers/per_form_csrf_tokens.rb
216
+ - spec/dummy/config/initializers/request_forgery_protection.rb
217
+ - spec/dummy/config/initializers/session_store.rb
218
+ - spec/dummy/config/initializers/wrap_parameters.rb
219
+ - spec/dummy/config/locales/en.yml
220
+ - spec/dummy/config/puma.rb
221
+ - spec/dummy/config/routes.rb
222
+ - spec/dummy/config/secrets.yml
223
+ - spec/dummy/lib/assets/.keep
224
+ - spec/dummy/log/.keep
225
+ - spec/dummy/public/404.html
226
+ - spec/dummy/public/422.html
227
+ - spec/dummy/public/500.html
228
+ - spec/dummy/public/apple-touch-icon-precomposed.png
229
+ - spec/dummy/public/apple-touch-icon.png
230
+ - spec/dummy/public/favicon.ico
231
+ - spec/exception_handler.rb
232
+ - spec/helpers/exception_handler/application_helper_spec.rb
169
233
  - spec/spec_helper.rb
170
- homepage: http://frontlineutilities.co.uk/ror/custom_error_pages
234
+ homepage: http://github.com/richpeck/exception_handler
171
235
  licenses:
172
236
  - MIT
173
237
  metadata: {}
@@ -210,10 +274,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
210
274
  version: '0'
211
275
  requirements: []
212
276
  rubyforge_project:
213
- rubygems_version: 2.5.0
277
+ rubygems_version: 2.4.5.1
214
278
  signing_key:
215
279
  specification_version: 4
216
- summary: Rails gem to show custom error pages in production. Also logs errors in "errors"
217
- db if required
218
- test_files:
219
- - spec/spec_helper.rb
280
+ summary: Rails gem to show custom error pages in production. Also logs errors in db
281
+ & sends notification emails
282
+ test_files: []
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file