class RSpec::Retry::Formatter

Public Class Methods

new(output) click to toggle source
Calls superclass method
# File lib/rspec/retry/formatter.rb, line 6
def initialize(output)
  super(output)
  @tries = Hash.new { |h, k| h[k] = { successes: 0, tries: 0 } }
end

Public Instance Methods

close(_) click to toggle source
# File lib/rspec/retry/formatter.rb, line 15
def close(_); end
dump_failures(_) click to toggle source
# File lib/rspec/retry/formatter.rb, line 17
def dump_failures(_); end
dump_pending(_) click to toggle source
# File lib/rspec/retry/formatter.rb, line 19
def dump_pending(_); end
dump_summary(notification) click to toggle source
# File lib/rspec/retry/formatter.rb, line 21
def dump_summary(notification)
  summary = "\nRSpec Retry Summary:\n"
  @tries.each do |key, retry_data|
    next if retry_data[:successes] < 1 || retry_data[:tries] <= 1
    summary += "\t#{key.location}: #{key.full_description}: passed at attempt #{retry_data[:tries]}\n"
  end
  retried = @tries.count { |_, v| v[:tries] > 1  && v[:successes] > 0 }
  summary += "\n\t#{retried} of #{notification.example_count} tests passed with retries.\n"
  summary += "\t#{notification.failure_count} tests failed all retries.\n"
  output.puts summary
end
example_passed(notification) click to toggle source
# File lib/rspec/retry/formatter.rb, line 33
def example_passed(notification)
  increment_success notification.example
end
message(_message) click to toggle source
# File lib/rspec/retry/formatter.rb, line 13
def message(_message); end
retry(example) click to toggle source
# File lib/rspec/retry/formatter.rb, line 37
def retry(example)
  increment_tries example
end
seed(_) click to toggle source
# File lib/rspec/retry/formatter.rb, line 11
def seed(_); end

Private Instance Methods

increment_success(example) click to toggle source
# File lib/rspec/retry/formatter.rb, line 43
def increment_success(example)
  # debugger
  previous = @tries[example]
  @tries[example] = {
    successes: previous[:successes] + 1, tries: previous[:tries] + 1 }
end
increment_tries(example) click to toggle source
# File lib/rspec/retry/formatter.rb, line 50
def increment_tries(example)
  # debugger
  previous = @tries[example]
  @tries[example] = {
    successes: previous[:successes], tries: previous[:tries] + 1 }
end