diff options
author | kennyj <kennyj@gmail.com> | 2012-01-31 21:26:17 +0900 |
---|---|---|
committer | kennyj <kennyj@gmail.com> | 2012-01-31 21:26:17 +0900 |
commit | 91700bfc2dce8a9c473087d206a3498eeecb1ca0 (patch) | |
tree | 842b85a2244365a7e901ab1bbaec06b7cad13255 /activesupport | |
parent | b2955edcea63e3daa347dc4e05b9abd380176ac8 (diff) | |
download | rails-91700bfc2dce8a9c473087d206a3498eeecb1ca0.tar.gz rails-91700bfc2dce8a9c473087d206a3498eeecb1ca0.tar.bz2 rails-91700bfc2dce8a9c473087d206a3498eeecb1ca0.zip |
Fix GH #4760. A Block was not evaluated.
Diffstat (limited to 'activesupport')
-rw-r--r-- | activesupport/lib/active_support/tagged_logging.rb | 5 | ||||
-rw-r--r-- | activesupport/test/tagged_logging_test.rb | 8 |
2 files changed, 11 insertions, 2 deletions
diff --git a/activesupport/lib/active_support/tagged_logging.rb b/activesupport/lib/active_support/tagged_logging.rb index d71215b447..6af87e85e6 100644 --- a/activesupport/lib/active_support/tagged_logging.rb +++ b/activesupport/lib/active_support/tagged_logging.rb @@ -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 diff --git a/activesupport/test/tagged_logging_test.rb b/activesupport/test/tagged_logging_test.rb index 7ecab33a9a..c838c073e6 100644 --- a/activesupport/test/tagged_logging_test.rb +++ b/activesupport/test/tagged_logging_test.rb @@ -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 |