require "include"
class TestFormatter < TestCase
def test_creation
assert_no_exception { Formatter.new.format(3) }
assert_no_exception { DefaultFormatter.new }
assert_kind_of(Formatter, DefaultFormatter.new)
end
def test_simple_formatter
sf = SimpleFormatter.new
f = Logger.new('simple formatter')
event = LogEvent.new(0, f, nil, "some data")
assert_match(sf.format(event), /simple formatter/)
end
def test_basic_formatter
b = BasicFormatter.new
f = Logger.new('fake formatter')
event = LogEvent.new(0, f, caller, "fake formatter")
event2 = LogEvent.new(0, f, nil, "fake formatter")
# this checks for tracing
assert_match(b.format(event), /in/)
assert_not_match(b.format(event2), /in/)
e = ArgumentError.new("argerror")
e.set_backtrace ['backtrace']
event3 = LogEvent.new(0, f, nil, e)
assert_match(b.format(event3), /ArgumentError/)
assert_match(b.format(LogEvent.new(0,f,nil,[1,2,3])), /Array/)
end
end
syntax highlighted by Code2HTML, v. 0.9.1