class Simulacrum::Browserstack::Summary

The Summary Class is responsible for combining dumped examlpes from one or more other RSpec runs.

Public Class Methods

new(results_set, start_time, end_time) click to toggle source

TODO: Rename me, I'm really just a formatter anyway TODO: Also, should this just be an external gem…? Prolly not?

Calls superclass method
# File lib/simulacrum/browserstack/summary.rb, line 12
def initialize(results_set, start_time, end_time)
  super($stdout)
  @results_set = results_set
  @start_time = start_time
  @end_time = end_time
end

Public Instance Methods

dump_commands_to_rerun_failed_examples() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 19
def dump_commands_to_rerun_failed_examples
  return if failed_examples.empty?
  output.puts
  output.puts('Failed examples:')
  output.puts

  failed_examples.each do |example|
    output.puts(failure_color("simulacrum --browser=#{example.metadata[:browser]} #{RSpec::Core::Metadata::relative_path(example.location)}") + ' ' + detail_color("# #{example.full_description}"))
  end
end
dump_summary() click to toggle source
Calls superclass method
# File lib/simulacrum/browserstack/summary.rb, line 30
def dump_summary
  super(duration, example_count, failure_count, pending_count)
end
duration() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 46
def duration
  @end_time - @start_time
end
example_count() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 50
def example_count
  summaries.map { |x| x[:example_count] }.reduce(:+)
end
failed_examples() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 34
def failed_examples
  examples.select do |example|
    example.execution_result[:status] == 'failed'
  end
end
failure_count() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 54
def failure_count
  summaries.map { |x| x[:failure_count] }.reduce(:+)
end
find_shared_group(example) click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 62
def find_shared_group(example)
end
group_and_parent_groups(example) click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 65
def group_and_parent_groups(example)
end
pending_count() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 58
def pending_count
  summaries.map { |x| x[:pending_count] }.reduce(:+)
end
pending_examples() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 40
def pending_examples
  examples.select do |example|
    example.execution_result[:status] == 'pending'
  end
end

Private Instance Methods

color_enabled?() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 70
def color_enabled?
  Simulacrum.runner_options.color
end
dumped_results() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 82
def dumped_results
  @dumped_results ||= @results_set.map do |result|
    Marshal.load(result[:results])
  end
end
examples() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 74
def examples
  dumped_results.map { |result| result[:examples] }.flatten
end
summaries() click to toggle source
# File lib/simulacrum/browserstack/summary.rb, line 78
def summaries
  dumped_results.map { |result| result[:summary] }.flatten
end