Sha256: e2fd3a5c3c25b8ff4e1019703a5bd13bfb8b1efa96440f156de2edf5c731de08
Contents?: true
Size: 1.7 KB
Versions: 3
Compression:
Stored size: 1.7 KB
Contents
# 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' begin require 'turn' rescue LoadError; end # 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 if defined?(nonce::FirstInstanceCall) define_method(:instance, nonce::FirstInstanceCall) else remove_method(:instance) Singleton.__init__(::Logging::Repository) end end end end end def teardown super ::Logging.backtrace ::Logging.__send__(:remove_instance_variable, :@backtrace) 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
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
TwP-logging-0.9.8 | test/setup.rb |
logging-0.9.7 | test/setup.rb |
logging-0.9.8 | test/setup.rb |