tartarus 1.0.3 → 2.0.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.
- data/.gitignore +1 -0
- data/.rvmrc +2 -0
- data/Gemfile +10 -0
- data/Gemfile.lock +104 -0
- data/README.rdoc +30 -4
- data/Rakefile +10 -28
- data/{generators → lib/generators}/tartarus/USAGE +4 -3
- data/lib/generators/tartarus/tartarus_generator.rb +36 -0
- data/{generators → lib/generators}/tartarus/templates/app/controllers/exceptions_controller.rb +0 -0
- data/{generators → lib/generators}/tartarus/templates/app/models/logged_exception.rb +0 -0
- data/{generators → lib/generators}/tartarus/templates/app/views/exceptions/_exception.html.erb +0 -0
- data/{generators → lib/generators}/tartarus/templates/app/views/exceptions/details.html.erb +0 -0
- data/{generators → lib/generators}/tartarus/templates/app/views/exceptions/index.html.erb +0 -0
- data/{generators → lib/generators}/tartarus/templates/config/exceptions.yml +0 -0
- data/{generators → lib/generators}/tartarus/templates/db/migrate/add_logged_exceptions.rb +0 -0
- data/{generators → lib/generators}/tartarus/templates/public/javascripts/tartarus.jquery.js +0 -0
- data/{generators → lib/generators}/tartarus/templates/public/stylesheets/tartarus.css +0 -0
- data/{generators → lib/generators}/tartarus/templates/spec/controllers/exceptions_controller_spec.rb +1 -1
- data/{generators → lib/generators}/tartarus/templates/spec/models/logged_exception_spec.rb +0 -0
- data/lib/tartarus.rb +7 -3
- data/lib/tartarus/logger.rb +50 -14
- data/lib/tartarus/notifiers/mail.rb +25 -0
- data/lib/tartarus/rack.rb +23 -0
- data/lib/tartarus/railtie.rb +9 -0
- data/lib/tartarus/version.rb +3 -0
- data/spec/rails_app/.gitignore +4 -0
- data/spec/rails_app/.rspec +1 -0
- data/spec/rails_app/Gemfile +13 -0
- data/spec/rails_app/Gemfile.lock +99 -0
- data/spec/rails_app/README +256 -0
- data/spec/rails_app/Rakefile +7 -0
- data/spec/rails_app/app/controllers/application_controller.rb +3 -0
- data/spec/rails_app/app/controllers/logged_exceptions_controller.rb +31 -0
- data/spec/rails_app/app/helpers/application_helper.rb +2 -0
- data/spec/{rails → rails_app}/app/models/logged_exception.rb +2 -1
- data/spec/rails_app/app/views/layouts/application.html.erb +14 -0
- data/spec/rails_app/app/views/logged_exceptions/_exception.html.erb +14 -0
- data/spec/rails_app/app/views/logged_exceptions/details.html.erb +86 -0
- data/spec/rails_app/app/views/logged_exceptions/index.html.erb +28 -0
- data/spec/rails_app/config.ru +4 -0
- data/spec/rails_app/config/application.rb +42 -0
- data/spec/rails_app/config/boot.rb +13 -0
- data/spec/rails_app/config/database.yml +22 -0
- data/spec/rails_app/config/environment.rb +5 -0
- data/spec/rails_app/config/environments/development.rb +26 -0
- data/spec/rails_app/config/environments/production.rb +49 -0
- data/spec/rails_app/config/environments/test.rb +35 -0
- data/spec/rails_app/config/exceptions.yml +18 -0
- data/spec/{rails → rails_app}/config/initializers/backtrace_silencers.rb +2 -2
- data/spec/{rails → rails_app}/config/initializers/inflections.rb +1 -1
- data/spec/{rails → rails_app}/config/initializers/mime_types.rb +0 -0
- data/spec/rails_app/config/initializers/secret_token.rb +7 -0
- data/spec/rails_app/config/initializers/session_store.rb +8 -0
- data/spec/{rails → rails_app}/config/locales/en.yml +1 -1
- data/spec/rails_app/config/routes.rb +58 -0
- data/spec/rails_app/db/migrate/20101230191040_add_logged_exception_table.rb +19 -0
- data/spec/rails_app/db/schema.rb +28 -0
- data/spec/rails_app/db/seeds.rb +7 -0
- data/spec/rails_app/doc/README_FOR_APP +2 -0
- data/spec/rails_app/lib/tasks/.gitkeep +0 -0
- data/spec/rails_app/public/404.html +26 -0
- data/spec/rails_app/public/422.html +26 -0
- data/spec/rails_app/public/500.html +26 -0
- data/spec/rails_app/public/favicon.ico +0 -0
- data/spec/rails_app/public/images/rails.png +0 -0
- data/spec/rails_app/public/javascripts/application.js +2 -0
- data/spec/rails_app/public/javascripts/controls.js +965 -0
- data/spec/rails_app/public/javascripts/dragdrop.js +974 -0
- data/spec/rails_app/public/javascripts/effects.js +1123 -0
- data/spec/rails_app/public/javascripts/prototype.js +6001 -0
- data/spec/rails_app/public/javascripts/rails.js +175 -0
- data/spec/rails_app/public/javascripts/tartarus.jquery.js +8 -0
- data/spec/rails_app/public/robots.txt +5 -0
- data/spec/rails_app/public/stylesheets/.gitkeep +0 -0
- data/spec/rails_app/public/stylesheets/tartarus.css +26 -0
- data/spec/rails_app/script/rails +6 -0
- data/spec/rails_app/spec/controllers/logged_exceptions_controller_spec.rb +83 -0
- data/spec/rails_app/spec/models/logged_exception_spec.rb +7 -0
- data/spec/rails_app/spec/spec_helper.rb +27 -0
- data/spec/rails_app/vendor/plugins/.gitkeep +0 -0
- data/spec/spec_helper.rb +14 -7
- data/spec/tartarus/logger_spec.rb +51 -23
- data/spec/tartarus_spec.rb +5 -8
- data/tartarus.gemspec +11 -103
- metadata +148 -94
- data/VERSION +0 -1
- data/generators/tartarus/tartarus_generator.rb +0 -50
- data/lib/tartarus/notifier.rb +0 -11
- data/lib/tartarus/rescue.rb +0 -39
- data/rails/init.rb +0 -3
- data/spec/rails/app/controllers/application_controller.rb +0 -10
- data/spec/rails/config/boot.rb +0 -110
- data/spec/rails/config/database.yml +0 -5
- data/spec/rails/config/environment.rb +0 -41
- data/spec/rails/config/environments/development.rb +0 -17
- data/spec/rails/config/environments/production.rb +0 -28
- data/spec/rails/config/environments/test.rb +0 -28
- data/spec/rails/config/exceptions.yml +0 -9
- data/spec/rails/config/initializers/new_rails_defaults.rb +0 -21
- data/spec/rails/config/initializers/session_store.rb +0 -15
- data/spec/rails/config/routes.rb +0 -43
- data/spec/rails/db/test.sqlite3 +0 -0
- data/spec/rcov.opts +0 -3
- data/spec/spec.opts +0 -4
- data/spec/tartarus/rescue_spec.rb +0 -86
- data/views/tartarus_notifier/notification.html.erb +0 -9
data/spec/rails/db/test.sqlite3
DELETED
|
Binary file
|
data/spec/rcov.opts
DELETED
data/spec/spec.opts
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
2
|
-
|
|
3
|
-
class TartarusRescueTestController < ApplicationController
|
|
4
|
-
end
|
|
5
|
-
|
|
6
|
-
describe Tartarus::Rescue do
|
|
7
|
-
before(:each) do
|
|
8
|
-
@controller = TartarusRescueTestController.new
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
describe 'when mixed into another class' do
|
|
12
|
-
it 'should alias_method_chain rescue_action method with tartarus' do
|
|
13
|
-
@controller.should respond_to(:rescue_action_with_tartarus)
|
|
14
|
-
@controller.should respond_to(:rescue_action_without_tartarus)
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
describe 'when normalizing request data for tartarus' do
|
|
19
|
-
before( :each ) do
|
|
20
|
-
@controller.stub( :request ).and_return( fake_controller_request )
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
it 'should have the session hash' do
|
|
24
|
-
params = @controller.normalize_request_data_for_tartarus
|
|
25
|
-
params[:session].should_not be_blank
|
|
26
|
-
params[:session].should be_an_instance_of(Hash)
|
|
27
|
-
params[:session].should == { :cookie => {}, :variables => { :id=>"123123" } }
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
it 'should have a enviroment hash that contains a hash of only the uppercase keys of the original controller request hash' do
|
|
31
|
-
params = @controller.normalize_request_data_for_tartarus
|
|
32
|
-
params[:enviroment].should_not be_blank
|
|
33
|
-
params[:enviroment].should == { "http_host" => "test_host", "loooooooong_key_two" => "key_two_value", "key_one" => "key_one_value", :server => `hostname -s`.chomp, :process => $$ }
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
it 'should have a http details hash' do
|
|
37
|
-
params = @controller.normalize_request_data_for_tartarus
|
|
38
|
-
params[:http_details].should_not be_blank
|
|
39
|
-
params[:http_details].should == { :parameters => "params", :format => "html", :method => "POST", :url => "http://test_host/my/uri" }
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
it "should return a hash of request data" do
|
|
43
|
-
params = @controller.normalize_request_data_for_tartarus
|
|
44
|
-
params.should be_an_instance_of(Hash)
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
describe "#rescue_action_with_tartarus" do
|
|
49
|
-
before(:each) do
|
|
50
|
-
@exception = StandardError.new
|
|
51
|
-
@controller.stub!(:rescue_action_without_tartarus)
|
|
52
|
-
@controller.stub!(:response_code_for_rescue).and_return(:internal_server_error)
|
|
53
|
-
Tartarus.stub!(:logging_enabled?).and_return(true)
|
|
54
|
-
Tartarus.stub!(:log)
|
|
55
|
-
end
|
|
56
|
-
|
|
57
|
-
it 'should log the exception with tartarus if the exception code should be an internal server error' do
|
|
58
|
-
Tartarus.should_receive(:log).with(@controller, @exception)
|
|
59
|
-
@controller.should_receive(:response_code_for_rescue).and_return(:internal_server_error)
|
|
60
|
-
@controller.rescue_action_with_tartarus(@exception)
|
|
61
|
-
end
|
|
62
|
-
|
|
63
|
-
it 'should not log the exception with tartarus if the exception code is not an internal server error' do
|
|
64
|
-
@controller.should_receive(:response_code_for_rescue).and_return(:not_found)
|
|
65
|
-
@controller.rescue_action_with_tartarus(@exception)
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
it 'should log the exception with tartarus if exception logging is enabled' do
|
|
69
|
-
Tartarus.should_receive(:logging_enabled?).and_return(true)
|
|
70
|
-
@controller.rescue_action_with_tartarus(@exception)
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
it 'should not log the exception with tartarus if exception logging is disabled' do
|
|
74
|
-
Tartarus.should_receive(:logging_enabled?).and_return(false)
|
|
75
|
-
Tartarus.should_receive(:log).never
|
|
76
|
-
|
|
77
|
-
@controller.rescue_action_with_tartarus(@exception)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
it 'should invoke rescue_action_without_tartarus' do
|
|
81
|
-
@controller.should_receive(:rescue_action_without_tartarus)
|
|
82
|
-
@controller.rescue_action_with_tartarus(@exception)
|
|
83
|
-
end
|
|
84
|
-
end
|
|
85
|
-
end
|
|
86
|
-
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
A new exception was raised (<%= @exception.created_at.strftime("%m/%d/%Y %I:%M%p") %>):
|
|
2
|
-
|
|
3
|
-
Class : <%= @exception.exception_class %>
|
|
4
|
-
Location : <%= @exception.controller_path %>#<%= @exception.action_name %>
|
|
5
|
-
Message : <%= @exception.message %>
|
|
6
|
-
Count : <%= @exception.group_count %>
|
|
7
|
-
|
|
8
|
-
Backtrace:
|
|
9
|
-
<%= @exception.backtrace %>
|