123456789_123456789_123456789_123456789_123456789_

Class: RSpec::Core::Formatters::BisectDebugFormatter Private

Do not use. This class is for internal use only.

Overview

Produces detailed debug output while bisecting. Used when bisect is performed with ‘–bisect=verbose`. Designed to provide details for us when we need to troubleshoot bisect bugs.

Class Method Summary

Instance Attribute Summary

Instance Method Summary

Instance Method Details

#bisect_dependency_check_failed(_notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 126

def bisect_dependency_check_failed(_notification)
  output.print "\n - Failure is not order-dependent"
end

#bisect_dependency_check_passed(_notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 122

def bisect_dependency_check_passed(_notification)
  output.print "\n - Failure appears to be order-dependent"
end

#bisect_individual_run_complete(notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 118

def bisect_individual_run_complete(notification)
  output.print " (#{Helpers.format_duration(notification.duration)})"
end

#bisect_individual_run_start(notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 114

def bisect_individual_run_start(notification)
  output.print "\n - Running: #{notification.command}"
end

#bisect_original_run_complete(notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 107

def bisect_original_run_complete(notification)
  output.puts " (#{Helpers.format_duration(notification.duration)})"

  output.puts " - #{describe_ids 'Failing examples', notification.failed_example_ids}"
  output.puts " - #{describe_ids 'Non-failing examples', notification.non_failing_example_ids}"
end

#bisect_round_detected_multiple_culprits(_notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 139

def bisect_round_detected_multiple_culprits(_notification)
  output.print "\n - Multiple culprits detected - splitting candidates"
end

#bisect_round_ignoring_ids(notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 134

def bisect_round_ignoring_ids(notification)
  output.print "\n - #{describe_ids 'Examples we can safely ignore', notification.ids_to_ignore}"
  output.print "\n - #{describe_ids 'Remaining non-failing examples', notification.remaining_ids}"
end

#bisect_round_started(notification)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 130

def bisect_round_started(notification)
  super(notification, false)
end

#bisect_started_message(notification) (private)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 151

def bisect_started_message(notification)
  "#{super} and bisect runner: #{notification.bisect_runner.inspect}"
end

#describe_ids(description, ids) (private)

[ GitHub ]

  
# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 145

def describe_ids(description, ids)
  organized_ids = Formatters::Helpers.organize_ids(ids)
  formatted_ids = organized_ids.map { |id| "    - #{id}" }.join("\n")
  "#{description} (#{ids.size}):\n#{formatted_ids}"
end