Some helper functions for testing. Usage:
RSpec.configure do |c| c.include( Loggability::SpecHelpers ) end describe MyClass do before( :all ) { setup_logging } after( :all ) { reset_logging } # ... end
Reset the logging subsystem to its default state.
# File lib/loggability/spechelpers.rb, line 23
def reset_logging
Loggability.formatter = nil
Loggability.output_to( $stderr )
Loggability.level = :fatal
end
Alter the output of the default log formatter to be pretty in SpecMate output if HTML_LOGGING is set or TM_FILENAME is set to something containing _spec.rb.
# File lib/loggability/spechelpers.rb, line 32
def setup_logging( level=:fatal )
# Only do this when executing from a spec in TextMate
if ENV['HTML_LOGGING'] || (ENV['TM_FILENAME'] && ENV['TM_FILENAME'] =~ %r_spec\.rb/)
logarray = []
Thread.current['logger-output'] = logarray
Loggability.output_to( logarray )
Loggability.format_as( :html )
Loggability.level = :debug
else
Loggability.level = level
end
end