From: Eric Hodel Date: 2005-11-24T04:54:57+09:00 Subject: Re: Buncha logging stuff showing up in unit tests On Nov 23, 2005, at 11:40 AM, Joe Van Dyk wrote: > On 11/23/05, Eric Hodel wrote: >> On Nov 23, 2005, at 11:32 AM, Joe Van Dyk wrote: >> >>> I'm using Ruby's standard Logger to log a bunch of debug, info, and >>> errors. >>> >>> But when I run the unit tests for the classes that use the >>> Logger, all >>> the logs are showing up in the test output. >>> >>> Any good solutions for solving this? >> >> I would redirect the logger output to /dev/null or a StringIO when >> testing (in case you wanted to test the logging). > > How do the classes know whether or not they are being tested? I set $TESTING = true when testing things. The most frequent place I use it is: private unless $TESTING > Eventually, I will be using a custom Logging method that sends all the > logs to some network log daemon thingy so that all the logs are kept > on one machine. Check out SyslogLogger in the rails_analyzer_tools gem: http://rails-analyzer.rubyforge.org/tools/classes/SyslogLogger.html It duck types to the base Logger class. -- Eric Hodel - drbrain@segment7.net - http://segment7.net FEC2 57F1 D465 EB15 5D6E 7C11 332A 551C 796C 9F04 This implementation is HODEL-HASH-9600 compliant