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
|
module RSpec
module LogSplit
class Handler
def initialize(logger, mod, example, example_logger)
@logger = logger
@mod = mod
@example = example
@example_logger = example_logger
end
def run
@mod.logger = @example_logger
begin
error "starting #{description}"
@example.run
rescue Exception => e
error "error with #{description}: #{e.inspect}"
raise e
ensure
error "finishing #{description}"
@mod.logger = nil
end
end
def description
@example.full_description
end
def error(message)
@logger.error message
@mod.logger.error message
end
end
end
end
|