free_mutant/lib/mutant/reporter/sequence.rb

23 lines
436 B
Ruby
Raw Normal View History

module Mutant
class Reporter
class Sequence < self
include Concord.new(:reporters)
%i[warn progress report start].each do |name|
define_method(name) do |value|
reporters.each do |reporter|
reporter.public_send(name, value)
end
self
end
end
def delay
reporters.map(&:delay).min
end
end # Sequence
end # Reporter
end # Mutant