1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Add notifications to default middleware stack and update subscriber tests.

This commit is contained in:
José Valim 2010-01-17 11:29:41 +01:00
parent 0334f9f6cf
commit 8f5e733998
5 changed files with 7 additions and 5 deletions

View file

@ -14,6 +14,7 @@ module Rails
middleware.use('::Rack::Lock', :if => lambda { !ActionController::Base.allow_concurrency }) middleware.use('::Rack::Lock', :if => lambda { !ActionController::Base.allow_concurrency })
middleware.use('::Rack::Runtime') middleware.use('::Rack::Runtime')
middleware.use('ActionDispatch::ShowExceptions', lambda { ActionController::Base.consider_all_requests_local }) middleware.use('ActionDispatch::ShowExceptions', lambda { ActionController::Base.consider_all_requests_local })
middleware.use('ActionDispatch::Notifications')
middleware.use('ActionDispatch::Callbacks', lambda { ActionController::Dispatcher.prepare_each_request }) middleware.use('ActionDispatch::Callbacks', lambda { ActionController::Dispatcher.prepare_each_request })
middleware.use('ActionDispatch::Cookies') middleware.use('ActionDispatch::Cookies')
middleware.use(lambda { ActionController::Base.session_store }, lambda { ActionController::Base.session_options }) middleware.use(lambda { ActionController::Base.session_store }, lambda { ActionController::Base.session_options })

View file

@ -66,7 +66,7 @@ module Rails
subscriber.send(name, ActiveSupport::Notifications::Event.new(*args)) subscriber.send(name, ActiveSupport::Notifications::Event.new(*args))
end end
if args[0] == "action_dispatch.callback" && !subscribers.empty? if args[0] == "action_dispatch.after_dispatch" && !subscribers.empty?
flush_all! flush_all!
log_tailer.tail! if log_tailer log_tailer.tail! if log_tailer
end end

View file

@ -18,6 +18,7 @@ module ApplicationTests
"Rack::Lock", "Rack::Lock",
"Rack::Runtime", "Rack::Runtime",
"ActionDispatch::ShowExceptions", "ActionDispatch::ShowExceptions",
"ActionDispatch::Notifications",
"ActionDispatch::Callbacks", "ActionDispatch::Callbacks",
"ActionDispatch::Cookies", "ActionDispatch::Cookies",
"ActionDispatch::Session::CookieStore", "ActionDispatch::Session::CookieStore",

View file

@ -64,7 +64,7 @@ module ApplicationTests
ActiveRecord::Base.logger = logger = MockLogger.new ActiveRecord::Base.logger = logger = MockLogger.new
# Mimic an ActiveRecord notifications # Mimic ActiveRecord notifications
instrument "active_record.sql", :name => "SQL", :sql => "SHOW tables" instrument "active_record.sql", :name => "SQL", :sql => "SHOW tables"
wait wait

View file

@ -92,7 +92,7 @@ module SubscriberTest
def test_flushes_loggers_when_action_dispatch_callback_is_received def test_flushes_loggers_when_action_dispatch_callback_is_received
Rails::Subscriber.add :my_subscriber, @subscriber Rails::Subscriber.add :my_subscriber, @subscriber
instrument "action_dispatch.callback" instrument "action_dispatch.after_dispatch"
wait wait
assert_equal 1, @logger.flush_count assert_equal 1, @logger.flush_count
end end
@ -100,7 +100,7 @@ module SubscriberTest
def test_flushes_the_same_logger_just_once def test_flushes_the_same_logger_just_once
Rails::Subscriber.add :my_subscriber, @subscriber Rails::Subscriber.add :my_subscriber, @subscriber
Rails::Subscriber.add :another, @subscriber Rails::Subscriber.add :another, @subscriber
instrument "action_dispatch.callback" instrument "action_dispatch.after_dispatch"
wait wait
assert_equal 1, @logger.flush_count assert_equal 1, @logger.flush_count
end end
@ -111,7 +111,7 @@ module SubscriberTest
Rails::Subscriber.log_tailer = log_tailer Rails::Subscriber.log_tailer = log_tailer
Rails::Subscriber.add :my_subscriber, @subscriber Rails::Subscriber.add :my_subscriber, @subscriber
instrument "action_dispatch.callback" instrument "action_dispatch.after_dispatch"
wait wait
ensure ensure
Rails::Subscriber.log_tailer = nil Rails::Subscriber.log_tailer = nil