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.
- checksums.yaml +4 -4
- data/.gitignore +11 -0
- data/.rspec +3 -1
- data/Gemfile +1 -1
- data/README.md +241 -92
- data/app/controllers/exception_handler/exception_controller.rb +13 -44
- data/app/helpers/exception_handler/application_helper.rb +47 -23
- data/app/models/exception_handler/error.rb +10 -9
- data/app/services/exception_handler/exception.rb +34 -0
- data/app/views/exception_handler/exception/show.html.erb +9 -6
- data/app/views/layouts/exception.html.erb +3 -3
- data/config/locales/en.yml +9 -0
- data/exception_handler.gemspec +16 -6
- data/lib/exception_handler.rb +67 -32
- data/lib/exception_handler/config.rb +49 -46
- data/lib/exception_handler/parse.rb +17 -17
- data/lib/exception_handler/parser/data.rb +57 -51
- data/lib/exception_handler/parser/ignore.rb +23 -23
- data/lib/exception_handler/version.rb +1 -1
- data/lib/generators/exception_handler/migration_generator.rb +17 -17
- data/lib/generators/exception_handler/views_generator.rb +27 -27
- data/spec/database.yml +3 -0
- data/spec/dummy/Rakefile +6 -0
- data/spec/dummy/app/assets/config/manifest.js +4 -0
- data/spec/dummy/app/assets/images/.keep +0 -0
- data/spec/dummy/app/assets/javascripts/application.js +13 -0
- data/spec/dummy/app/assets/javascripts/cable.coffee +11 -0
- data/spec/dummy/app/assets/javascripts/channels/.keep +0 -0
- data/spec/dummy/app/assets/stylesheets/application.css +15 -0
- data/spec/dummy/app/channels/application_cable/channel.rb +5 -0
- data/spec/dummy/app/channels/application_cable/connection.rb +5 -0
- data/spec/dummy/app/controllers/application_controller.rb +5 -0
- data/spec/dummy/app/controllers/concerns/.keep +0 -0
- data/spec/dummy/app/helpers/application_helper.rb +2 -0
- data/spec/dummy/app/jobs/application_job.rb +2 -0
- data/spec/dummy/app/mailers/application_mailer.rb +4 -0
- data/spec/dummy/app/models/application_record.rb +3 -0
- data/spec/dummy/app/models/concerns/.keep +0 -0
- data/spec/dummy/app/views/layouts/application.html.erb +15 -0
- data/spec/dummy/app/views/layouts/mailer.html.erb +13 -0
- data/spec/dummy/app/views/layouts/mailer.text.erb +1 -0
- data/spec/dummy/bin/bundle +3 -0
- data/spec/dummy/bin/rails +4 -0
- data/spec/dummy/bin/rake +4 -0
- data/spec/dummy/bin/setup +34 -0
- data/spec/dummy/bin/update +29 -0
- data/spec/dummy/config.ru +8 -0
- data/spec/dummy/config/application.rb +21 -0
- data/spec/dummy/config/boot.rb +5 -0
- data/spec/dummy/config/cable.yml +10 -0
- data/spec/dummy/config/database.yml +25 -0
- data/spec/dummy/config/environment.rb +5 -0
- data/spec/dummy/config/environments/development.rb +62 -0
- data/spec/dummy/config/environments/production.rb +87 -0
- data/spec/dummy/config/environments/test.rb +42 -0
- data/spec/dummy/config/initializers/active_record_belongs_to_required_by_default.rb +6 -0
- data/spec/dummy/config/initializers/application_controller_renderer.rb +6 -0
- data/spec/dummy/config/initializers/assets.rb +11 -0
- data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/spec/dummy/config/initializers/callback_terminator.rb +6 -0
- data/spec/dummy/config/initializers/cookies_serializer.rb +5 -0
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec/dummy/config/initializers/inflections.rb +16 -0
- data/spec/dummy/config/initializers/mime_types.rb +4 -0
- data/spec/dummy/config/initializers/per_form_csrf_tokens.rb +4 -0
- data/spec/dummy/config/initializers/request_forgery_protection.rb +4 -0
- data/spec/dummy/config/initializers/session_store.rb +3 -0
- data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/spec/dummy/config/locales/en.yml +23 -0
- data/spec/dummy/config/puma.rb +47 -0
- data/spec/dummy/config/routes.rb +6 -0
- data/spec/dummy/config/secrets.yml +22 -0
- data/spec/dummy/lib/assets/.keep +0 -0
- data/spec/dummy/log/.keep +0 -0
- data/spec/dummy/public/404.html +67 -0
- data/spec/dummy/public/422.html +67 -0
- data/spec/dummy/public/500.html +66 -0
- data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
- data/spec/dummy/public/apple-touch-icon.png +0 -0
- data/spec/dummy/public/favicon.ico +0 -0
- data/spec/exception_handler.rb +22 -0
- data/spec/helpers/exception_handler/application_helper_spec.rb +42 -0
- data/spec/spec_helper.rb +28 -9
- metadata +102 -39
- data/readme/400.jpg +0 -0
- data/readme/500.jpg +0 -0
- data/readme/application_controller.jpg +0 -0
- data/readme/config.jpg +0 -0
- data/readme/db.jpg +0 -0
- data/readme/db_edit.jpg +0 -0
- data/readme/dev.jpg +0 -0
- data/readme/exception_controller.jpg +0 -0
- data/readme/exceptions_app.png +0 -0
- data/readme/layout.jpg +0 -0
- data/readme/parser.jpg +0 -0
- data/readme/rubygems.jpg +0 -0
- data/readme/source/screen.psd +0 -0
- data/readme/source/subtitle.psd +0 -0
- data/readme/source/title.psd +0 -0
- data/readme/subtitle.jpg +0 -0
- data/readme/title.jpg +0 -0
- data/readme/titles/bugs.png +0 -0
- data/readme/titles/contents.png +0 -0
- data/readme/titles/contribution.png +0 -0
- data/readme/titles/custom_error_pages.png +0 -0
- data/readme/titles/support.png +0 -0
- data/readme/titles/testing.png +0 -0
- data/readme/titles/title.psd +0 -0
- data/readme/view.jpg +0 -0
File without changes
|
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
|
+
#####################################################
|
data/spec/spec_helper.rb
CHANGED
@@ -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
|
-
|
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
|
-
#
|
16
|
-
|
17
|
-
|
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
|
-
|
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
|
+
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:
|
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: '
|
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: '
|
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
|
-
-
|
145
|
-
-
|
146
|
-
-
|
147
|
-
-
|
148
|
-
-
|
149
|
-
-
|
150
|
-
-
|
151
|
-
-
|
152
|
-
-
|
153
|
-
-
|
154
|
-
-
|
155
|
-
-
|
156
|
-
-
|
157
|
-
-
|
158
|
-
-
|
159
|
-
-
|
160
|
-
-
|
161
|
-
-
|
162
|
-
-
|
163
|
-
-
|
164
|
-
-
|
165
|
-
-
|
166
|
-
-
|
167
|
-
-
|
168
|
-
-
|
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://
|
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.
|
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
|
217
|
-
|
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: []
|
data/readme/400.jpg
DELETED
Binary file
|
data/readme/500.jpg
DELETED
Binary file
|
Binary file
|
data/readme/config.jpg
DELETED
Binary file
|
data/readme/db.jpg
DELETED
Binary file
|
data/readme/db_edit.jpg
DELETED
Binary file
|
data/readme/dev.jpg
DELETED
Binary file
|
Binary file
|
data/readme/exceptions_app.png
DELETED
Binary file
|
data/readme/layout.jpg
DELETED
Binary file
|
data/readme/parser.jpg
DELETED
Binary file
|
data/readme/rubygems.jpg
DELETED
Binary file
|
data/readme/source/screen.psd
DELETED
Binary file
|
data/readme/source/subtitle.psd
DELETED
Binary file
|
data/readme/source/title.psd
DELETED
Binary file
|
data/readme/subtitle.jpg
DELETED
Binary file
|
data/readme/title.jpg
DELETED
Binary file
|
data/readme/titles/bugs.png
DELETED
Binary file
|
data/readme/titles/contents.png
DELETED
Binary file
|
Binary file
|
Binary file
|
data/readme/titles/support.png
DELETED
Binary file
|
data/readme/titles/testing.png
DELETED
Binary file
|
data/readme/titles/title.psd
DELETED
Binary file
|
data/readme/view.jpg
DELETED
Binary file
|