Class: RSpec::Core::Formatters::BisectProgressFormatter Private
Do not use. This class is for internal use only.
Relationships & Source Files | |
Extension / Inclusion / Inheritance Descendants | |
Subclasses:
RSpec::Core::Formatters::BisectDebugFormatter
|
|
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
BaseTextFormatter ,
BaseFormatter
|
|
Instance Chain:
self,
BaseTextFormatter ,
BaseFormatter
|
|
Inherits: |
RSpec::Core::Formatters::BaseTextFormatter
|
Defined in: | rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb |
Overview
Produces progress output while bisecting.
Class Method Summary
- .new(output, bisect_runner) ⇒ BisectProgressFormatter constructor Internal use only
BaseFormatter
- Inherited
Instance Attribute Summary
BaseFormatter
- Inherited
Instance Method Summary
- #bisect_aborted(notification) Internal use only
- #bisect_complete(notification) Internal use only
- #bisect_dependency_check_failed(_notification) Internal use only
- #bisect_dependency_check_passed(_notification) Internal use only
- #bisect_dependency_check_started(_notification) Internal use only
- #bisect_failed(notification) Internal use only
- #bisect_individual_run_complete(_) Internal use only
- #bisect_original_run_complete(notification) Internal use only
- #bisect_repro_command(notification) Internal use only
- #bisect_round_detected_multiple_culprits(notification) Internal use only
- #bisect_round_ignoring_ids(notification) Internal use only
- #bisect_round_started(notification, include_trailing_space = true) Internal use only
- #bisect_starting(notification) Internal use only
- #bisect_started_message(notification) private Internal use only
BaseTextFormatter
- Inherited
#close | Invoked at the end of a suite run. |
#dump_failures | Dumps detailed information about each example failure. |
#dump_pending, | |
#dump_summary | This method is invoked after the dumping of examples and failures. |
#message | Used by the reporter to send messages to the output stream. |
#seed |
BaseFormatter
- Inherited
Instance Method Details
#bisect_aborted(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 89
def bisect_aborted(notification) output.puts "\n\nBisect aborted!" output.puts "\nThe most minimal reproduction command discovered so far is:\n #{notification.repro}" end
#bisect_complete(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 74
def bisect_complete(notification) output.puts "\nBisect complete! Reduced necessary non-failing examples " \ "from #{notification.original_non_failing_count} to " \ "#{notification.remaining_count} in " \ "#{Helpers.format_duration(notification.duration)}." end
#bisect_dependency_check_failed(_notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 36
def bisect_dependency_check_failed(_notification) output.puts " failure(s) do not require any non-failures to run first" if @bisect_runner == :fork output.puts output.puts "=" * 80 output.puts "NOTE: this bisect run used `config.bisect_runner = :fork`, which generally" output.puts "provides significantly faster bisection runs than the old shell-based runner," output.puts "but may inaccurately report that no non-failures are required. If this result" output.puts "is unexpected, consider setting `config.bisect_runner = :shell` and trying again." output.puts "=" * 80 end end
#bisect_dependency_check_passed(_notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 32
def bisect_dependency_check_passed(_notification) output.puts " failure appears to be order-dependent" end
#bisect_dependency_check_started(_notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 28
def bisect_dependency_check_started(_notification) output.print "Checking that failure(s) are order-dependent.." end
#bisect_failed(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 85
def bisect_failed(notification) output.puts "\nBisect failed! #{notification.failure_explanation}" end
#bisect_individual_run_complete(_)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 70
def bisect_individual_run_complete(_) output.print '.' end
#bisect_original_run_complete(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 20
def bisect_original_run_complete(notification) failures = Helpers.pluralize(notification.failed_example_ids.size, "failing example") non_failures = Helpers.pluralize(notification.non_failing_example_ids.size, "non-failing example") output.puts " (#{Helpers.format_duration(notification.duration)})" output.puts "Starting bisect with #{failures} and #{non_failures}." end
#bisect_repro_command(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 81
def bisect_repro_command(notification) output.puts "\nThe minimal reproduction command is:\n #{notification.repro}" end
#bisect_round_detected_multiple_culprits(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 65
def bisect_round_detected_multiple_culprits(notification) output.print " multiple culprits detected - splitting candidates" output.print " (#{Helpers.format_duration(notification.duration)})" end
#bisect_round_ignoring_ids(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 58
def bisect_round_ignoring_ids(notification) range_desc = notification.ignore_range.description output.print " ignoring #{range_desc}" output.print " (#{Helpers.format_duration(notification.duration)})" end
#bisect_round_started(notification, include_trailing_space = true)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 50
def bisect_round_started(notification, include_trailing_space=true) @round_count += 1 range_desc = notification.candidate_range.description output.print "\nRound #{@round_count}: bisecting over non-failing #{range_desc}" output.print " " if include_trailing_space end
#bisect_started_message(notification) (private)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 96
def (notification) = notification.original_cli_args.join(' ') "Bisect started using options: #{ .inspect}" end
#bisect_starting(notification)
[ GitHub ]# File 'rspec-core/lib/rspec/core/formatters/bisect_progress_formatter.rb', line 14
def bisect_starting(notification) @round_count = 0 output.puts (notification) output.print "Running suite to find failures..." end