class Fluent::Test::TestDriver
def initialize(klass, &block)
def initialize(klass, &block) if klass.is_a?(Class) if block # Create new class for test w/ overwritten methods # klass.dup is worse because its ancestors does NOT include original class name klass_name = klass.name klass = Class.new(klass) klass.define_singleton_method("name") { klass_name } klass.module_eval(&block) end @instance = klass.new else @instance = klass end @instance.router = Engine.root_agent.event_router @instance.log = TestLogger.new Engine.root_agent.instance_variable_set(:@log, @instance.log) @config = Config.new end