Sha256: 09134de1656b69e3124c16e49507a69ce1f04ac8f9ef9acf5bdd23f47658fe93
Contents?: true
Size: 1.45 KB
Versions: 2
Compression:
Stored size: 1.45 KB
Contents
# $Id$ # Equivalent to a header guard in C/C++ # Used to prevent the class/module from being loaded more than once unless defined? LOGGING_TEST_SETUP LOGGING_TEST_SETUP = true require 'rubygems' require 'test/unit' require 'fileutils' require 'stringio' require 'turn' rescue nil # This line is needed for Ruby 1.9 -- hashes throw a "KeyError" in 1.9 # whereas they throw an "IndexError" in 1.8 # KeyError = IndexError if not defined? KeyError require File.join(File.dirname(__FILE__), %w[.. lib logging]) module TestLogging module LoggingTestCase TMP = 'tmp' def setup super FileUtils.rm_rf TMP FileUtils.mkdir TMP ::Logging.module_eval do ::Logging::LEVELS.clear ::Logging::LNAMES.clear remove_const :MAX_LEVEL_LENGTH if const_defined? :MAX_LEVEL_LENGTH remove_const :OBJ_FORMAT if const_defined? :OBJ_FORMAT end ::Logging::Repository.class_eval do if defined?(@singleton__instance__) @singleton__instance__ = nil else @__instance__ = nil class << self nonce = class << Singleton; self; end define_method(:instance, nonce::FirstInstanceCall) end end end end def teardown super h = ::Logging::Appender.instance_variable_get(:@appenders) h.each_value {|a| a.close(false) unless a.nil? || a.closed?} h.clear FileUtils.rm_rf TMP end end # module LoggingTestCase end # module TestLogging end # unless defined? # EOF
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
filterfish-logging-0.9.8 | test/setup.rb |
logging-0.8.0 | test/setup.rb |