1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
require File.expand_path('setup', File.dirname(__FILE__))
module TestLogging
class TestRootLogger < Test::Unit::TestCase
include LoggingTestCase
def setup
super
@root = ::Logging::Logger.root
end
def test_additive
assert_raise(NoMethodError) {@root.additive}
end
def test_additive_eq
assert_raise(NoMethodError) {@root.additive = true}
end
def test_level_eq
assert_equal 0, @root.level
assert_raise(ArgumentError) {@root.level = -1}
assert_raise(ArgumentError) {@root.level = 6}
assert_raise(ArgumentError) {@root.level = Object}
assert_raise(ArgumentError) {@root.level = 'bob'}
assert_raise(ArgumentError) {@root.level = :wtf}
@root.level = 'INFO'
assert_equal 1, @root.level
@root.level = :warn
assert_equal 2, @root.level
@root.level = 'error'
assert_equal 3, @root.level
@root.level = 4
assert_equal 4, @root.level
@root.level = :all
assert_equal 0, @root.level
@root.level = 'OFF'
assert_equal 5, @root.level
@root.level = nil
assert_equal 0, @root.level
end
def test_name
assert_equal 'root', @root.name
end
def test_parent
assert_raise(NoMethodError) {@root.parent}
end
def test_parent_eq
assert_raise(NoMethodError) {@root.parent = nil}
end
def test_spaceship
logs = %w(
A A::B A::B::C A::B::C::D A::B::C::E A::B::C::E::G A::B::C::F
).map {|x| ::Logging::Logger[x]}
logs.each do |log|
assert_equal(-1, @root <=> log, "'root' <=> '#{log.name}'")
end
assert_equal 0, @root <=> @root
assert_raise(ArgumentError) {@root <=> 'string'}
end
end # class TestRootLogger
end # module TestLogging
|