From 05f173e2c2607e38cc4f86d53fbba8c832082208 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Sat, 22 Sep 2007 18:25:30 +0000 Subject: Added call to inspect on non-string classes for the logger (closes #8533) [codahale] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7565 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- activesupport/CHANGELOG | 2 ++ activesupport/lib/active_support/clean_logger.rb | 2 +- activesupport/test/clean_logger_test.rb | 6 ++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG index f70b6eebb2..e0057eb72e 100644 --- a/activesupport/CHANGELOG +++ b/activesupport/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Added call to inspect on non-string classes for the logger #8533 [codahale] + * Deprecation: remove deprecated :mday option from Time, Date, and DateTime#change. [Jeremy Kemper] * Fix JSON decoder with nested quotes and commas. #9579 [zdennis] diff --git a/activesupport/lib/active_support/clean_logger.rb b/activesupport/lib/active_support/clean_logger.rb index 7ce9faba48..95d4f07f4d 100644 --- a/activesupport/lib/active_support/clean_logger.rb +++ b/activesupport/lib/active_support/clean_logger.rb @@ -93,7 +93,7 @@ class Logger class SimpleFormatter < Logger::Formatter # This method is invoked when a log event occurs def call(severity, timestamp, progname, msg) - "#{msg}\n" + "#{String === msg ? msg : msg.inspect}\n" end end diff --git a/activesupport/test/clean_logger_test.rb b/activesupport/test/clean_logger_test.rb index cf7b5c6036..5c9c8f9147 100644 --- a/activesupport/test/clean_logger_test.rb +++ b/activesupport/test/clean_logger_test.rb @@ -48,4 +48,10 @@ class CleanLoggerTest < Test::Unit::TestCase assert_equal "%Y-%m-%d", @logger.datetime_format assert_match(/D, \[\d\d\d\d-\d\d-\d\d#\d+\] DEBUG -- : debug/, @out.string) end + + def test_nonstring_formatting + an_object = [1, 2, 3, 4, 5] + @logger.debug an_object + assert_equal("#{an_object.inspect}\n", @out.string) + end end -- cgit v1.2.3