class Minitest::Reporters::DelegateReporter
Public Class Methods
new(reporters, options = {})
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 4 def initialize(reporters, options = {}) @reporters = reporters @options = options @all_reporters = nil end
Public Instance Methods
io()
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 10 def io all_reporters.first.io unless all_reporters.empty? @options[:io] end
passed?()
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 29 def passed? all_reporters.all?(&:passed?) end
record(result)
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 19 def record(result) all_reporters.each do |reporter| reporter.record result end end
report()
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 25 def report all_reporters.each(&:report) end
start()
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 15 def start all_reporters.each(&:start) end
Private Instance Methods
all_reporters()
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 47 def all_reporters @all_reporters ||= init_all_reporters end
guard_reporter(reporters)
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 61 def guard_reporter(reporters) guards = Array(reporters.detect { |r| r.class.name == "Guard::Minitest::Reporter" }) return guards unless ENV['RM_INFO'] warn 'RM_INFO is set thus guard reporter has been dropped' unless guards.empty? [] end
init_all_reporters()
click to toggle source
# File lib/minitest/minitest_reporter_plugin.rb, line 51 def init_all_reporters return @reporters unless defined?(Minitest::Reporters.reporters) && Minitest::Reporters.reporters (Minitest::Reporters.reporters + guard_reporter(@reporters)).each do |reporter| reporter.io = @options[:io] if reporter.respond_to?(:add_defaults) reporter.add_defaults(@options.merge(:total_count => total_count(@options))) end end end
total_count(options)
click to toggle source
stolen from minitest self.run
# File lib/minitest/minitest_reporter_plugin.rb, line 36 def total_count(options) filter = options[:filter] || '/./' filter = Regexp.new $1 if filter =~ /\/(.*)\// Minitest::Runnable.runnables.map { |runnable| runnable.runnable_methods.find_all { |m| filter === m || filter === "#{runnable}##{m}" }.size }.inject(:+) end