Merge pull request #26926 from gsamokovarov/debug-exceptions-plain-loggers

Support plain loggers in DebugExceptions
This commit is contained in:
Rafael França 2016-10-29 01:14:32 -02:00 committed by GitHub
commit f81a5ffbde
2 changed files with 20 additions and 1 deletions

View File

@ -38,7 +38,9 @@ module ActionDispatch
end
def render(*)
if logger = ActionView::Base.logger
logger = ActionView::Base.logger
if logger && logger.respond_to?(:silence)
logger.silence { super }
else
super

View File

@ -384,6 +384,23 @@ class DebugExceptionsTest < ActionDispatch::IntegrationTest
end
end
test "logs with non active support loggers" do
@app = DevelopmentApp
io = StringIO.new
logger = Logger.new(io)
_old, ActionView::Base.logger = ActionView::Base.logger, logger
begin
assert_nothing_raised do
get "/", headers: { "action_dispatch.show_exceptions" => true, "action_dispatch.logger" => logger }
end
ensure
ActionView::Base.logger = _old
end
assert_match(/puke/, io.rewind && io.read)
end
test "uses backtrace cleaner from env" do
@app = DevelopmentApp
backtrace_cleaner = ActiveSupport::BacktraceCleaner.new