Class: ErrorToCommunicate::RSpecFormatter

Inherits:
RSpec::Core::Formatters::DocumentationFormatter
  • Object
show all
Defined in:
lib/error_to_communicate/rspec_formatter.rb

Instance Method Summary collapse

Instance Method Details

#dump_failures(notification) ⇒ Object

Use ErrorToCommunicate to print error info rather than default DocumentationFormatter.

How did we figure out how to implement it? See “Down the rabbit hole” section in github.com/JoshCheek/what-we-ve-got-here-is-an-error-to-communicate/blob/ede6844/lib/error_to_communicate/rspec_formatter.rb#L68

FIXME: Needs to respect RSpec.configuration.color_enabled?

but we can't currently turn colour off in our output


76
77
78
79
80
81
82
83
84
85
86
# File 'lib/error_to_communicate/rspec_formatter.rb', line 76

def dump_failures(notification)
  output.puts "\nFailures:\n"
  notification.failure_notifications.each.with_index(1) do |failure, failure_number|
    heuristic = Heuristic::RSpecFailure.new \
      config:         Config.default,
      failure:        failure,
      failure_number: failure_number
    formatted = Config.default.format heuristic, Dir.pwd
    output.puts formatted.chomp.gsub(/^/, '  ')
  end
end