mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Fix GH #4760. A Block was not evaluated.
This commit is contained in:
@@ -33,13 +33,14 @@ module ActiveSupport
|
||||
deprecate :silence
|
||||
|
||||
def add(severity, message = nil, progname = nil, &block)
|
||||
@logger.add(severity, "#{tags_text}#{message}", progname, &block)
|
||||
message = (block_given? ? block.call : progname) if message.nil?
|
||||
@logger.add(severity, "#{tags_text}#{message}", progname)
|
||||
end
|
||||
|
||||
%w( fatal error warn info debug unknown ).each do |severity|
|
||||
eval <<-EOM, nil, __FILE__, __LINE__ + 1
|
||||
def #{severity}(progname = nil, &block)
|
||||
add(Logger::#{severity.upcase}, progname, &block)
|
||||
add(Logger::#{severity.upcase}, nil, progname, &block)
|
||||
end
|
||||
EOM
|
||||
end
|
||||
|
||||
@@ -70,4 +70,12 @@ class TaggedLoggingTest < ActiveSupport::TestCase
|
||||
assert_nothing_raised { @logger.silence {} }
|
||||
end
|
||||
end
|
||||
|
||||
test "calls block" do
|
||||
@logger.tagged("BCX") do
|
||||
@logger.info { "Funky town" }
|
||||
end
|
||||
assert_equal "[BCX] Funky town\n", @output.string
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user