Sha256: d4cd15867333d62054a2d310587d39323dee466e2efb43097e1c2c27b3f927c9

Contents?: true

Size: 814 Bytes

Versions: 9

Compression:

Stored size: 814 Bytes

Contents

module Mutant
  class Reporter
    # Reporter to trace report calls, used as a spec adapter
    class Trace
      include Adamantium::Mutable, Anima.new(:start_calls, :progress_calls, :report_calls, :warn_calls)

      # Return new trace reporter
      #
      # @return [Trace]
      #
      # @api private
      #
      def self.new
        super(Hash[anima.attribute_names.map { |name| [name, []] }])
      end

      %w[start progress report warn].each do |name|
        define_method(name) do |object|
          public_send(:"#{name}_calls") << object
          self
        end
      end

      REPORT_DELAY = 0.0

      # Return report delay
      #
      # @return [Float]
      #
      # @api private
      #
      def delay
        REPORT_DELAY
      end

    end # Tracker
  end # reporter
end # Mutant

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
mutant-0.8.0 lib/mutant/reporter/trace.rb
mutant-0.7.9 lib/mutant/reporter/trace.rb
mutant-0.7.8 lib/mutant/reporter/trace.rb
mutant-0.7.7 lib/mutant/reporter/trace.rb
mutant-0.7.6 lib/mutant/reporter/trace.rb
mutant-0.7.5 lib/mutant/reporter/trace.rb
mutant-0.7.4 lib/mutant/reporter/trace.rb
mutant-0.7.3 lib/mutant/reporter/trace.rb
mutant-0.7.2 lib/mutant/reporter/trace.rb