class RuboCop::RSpec::ParallelFormatter

needed for outputting after the parallel run completes.
It also adds metadata to the output in order to more easily find the text
will be surfaced by test-queue.
removes much of the noise from RSpec so that only the important information
RSpec formatter for use with running ‘rake spec` in parallel. This formatter

def colorize_summary(summary)

def colorize_summary(summary)
  totals = totals(summary)
  if summary.failure_count.positive? || summary.errors_outside_of_examples_count.positive?
    colorizer.wrap(totals, ::RSpec.configuration.failure_color)
  else
    colorizer.wrap(totals, ::RSpec.configuration.success_color)
  end
end

def colorizer

def colorizer
  @colorizer ||= ::RSpec::Core::Formatters::ConsoleCodes
end

def dump_failures(notification)

removed!
output goes where in the final parallelized output, and should not be
The BEGIN/END comments are used by `spec_runner.rake` to determine what
def dump_failures(notification)
  return if notification.failure_notifications.empty?
  output.puts '# FAILURES BEGIN'
  notification.failure_notifications.each do |failure|
    output.puts failure.fully_formatted('*', colorizer)
  end
  output.puts
  output.puts '# FAILURES END'
end

def dump_pending(*); end

Don't show pending tests
def dump_pending(*); end

def dump_summary(summary)

def dump_summary(summary)
  output_summary(summary)
  output_rerun_commands(summary)
end

def output_rerun_commands(summary)

removed!
output goes where in the final parallelized output, and should not be
The BEGIN/END comments are used by `spec_runner.rake` to determine what
def output_rerun_commands(summary)
  output.puts '# RERUN BEGIN'
  output.puts summary.colorized_rerun_commands.lines[3..].join
  output.puts '# RERUN END'
end

def output_summary(summary)

removed!
output goes where in the final parallelized output, and should not be
The BEGIN/END comments are used by `spec_runner.rake` to determine what
def output_summary(summary)
  output.puts '# SUMMARY BEGIN'
  output.puts colorize_summary(summary)
  output.puts '# SUMMARY END'
end

def pluralize(*args)

def pluralize(*args)
  ::RSpec::Core::Formatters::Helpers.pluralize(*args)
end

def totals(summary)

def totals(summary)
  output = pluralize(summary.example_count, 'example')
  output += ", #{summary.pending_count} pending" if summary.pending_count.positive?
  output += ", #{pluralize(summary.failure_count, 'failure')}"
  if summary.errors_outside_of_examples_count.positive?
    error_count = pluralize(summary.errors_outside_of_examples_count, 'error')
    output += ", #{error_count} occurred outside of examples"
  end
  output
end