class RSpec::Core::Formatters::BisectDebugFormatter
Designed to provide details for us when we need to troubleshoot bisect bugs.
bisect is performed while the ‘DEBUG_RSPEC_BISECT` ENV var is used.
Produces detailed debug output while bisecting. Used when
@private
def bisect_dependency_check_failed(_notification)
def bisect_dependency_check_failed(_notification) output.print "\n - Failure is not order-dependent" end
def bisect_dependency_check_passed(_notification)
def bisect_dependency_check_passed(_notification) output.print "\n - Failure appears to be order-dependent" end
def bisect_individual_run_complete(notification)
def bisect_individual_run_complete(notification) output.print " (#{Helpers.format_duration(notification.duration)})" end
def bisect_individual_run_start(notification)
def bisect_individual_run_start(notification) output.print "\n - Running: #{notification.command}" end
def bisect_original_run_complete(notification)
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
def bisect_round_detected_multiple_culprits(_notification)
def bisect_round_detected_multiple_culprits(_notification) output.print "\n - Multiple culprits detected - splitting candidates" end
def bisect_round_ignoring_ids(notification)
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
def bisect_round_started(notification)
def bisect_round_started(notification) super(notification, false) end
def describe_ids(description, ids)
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