class Zucchini::Runner

Public Instance Methods

run_command() click to toggle source
# File lib/zucchini/runner.rb, line 11
def run_command
  compare_threads = {}

  features.each do |f|
    f.device = @device

    if    collect? then f.collect
    elsif compare? then f.compare
    else  f.collect; compare_threads[f.name] = Thread.new { f.compare }
    end
  end

  compare_threads.each { |name, t| t.abort_on_exception = true; t.join }

  unless (collect? && !compare?)
    report = Zucchini::Report.new(features, ci?, reports_dir)
    report.open unless silent?
  end

  features.inject(true){ |result, feature| result &= feature.succeeded }
end