Class Spec::Runner::Formatter::BaseFormatter
In: lib/spec/runner/formatter/base_formatter.rb
Parent: Object

Formatter base-class, which implements all required methods as no-ops, with the exception

Methods

Public Class methods

Formatters are initialized with options and output arguments. RSpec‘s built-in formatters already expect this, and any custom formatters should as well.

Parameters

options:A struct containing boolean values for colour, autospec, and dry_run
output:Used by RSpec‘s built-in formatters to determine where to write the output. Default is STDOUT, otherwise a filename is expected.

Example

If you invoke the spec command with:

  --format progress:progress_report.txt

… the value of output will be progress_report.txt. If you don‘t identify an output destination, the default is STDOUT.

Public Instance methods

This method is invoked at the very end. Allows the formatter to clean up, like closing open streams.

Dumps detailed information about an example failure. This method is invoked for each failed example after all examples have run. counter is the sequence number of the associated example. failure is a Failure object, which contains detailed information about the failure.

Parameters

counter:the sequential number of this failure
failure:instance of Spec::Runner::Reporter::Failure

This gets invoked after the summary

This method is invoked after the dumping of examples and failures.

Parameters

duration:the total time for the entire run
example_count:the number of examples run
failure_count:the number of examples that failed
pending_count:the number of examples that are pending

This method is invoked when an example fails, i.e. an exception occurred inside it (such as a failed should or other exception).

Parameters

example_proxy:The same instance of Spec::Example::ExampleProxy that was passed to example_started
counter:the sequential number of this failure
failure:instance of Spec::Runner::Reporter::Failure

This method is invoked at the beginning of the execution of each example_group. The next method to be invoked after this is example_started

Parameters

example_group_proxy:instance of Spec::Example::ExampleGroupProxy

This method is invoked when an example passes. example_proxy is the same instance of Spec::Example::ExampleProxy that was passed to example_started

Parameters

example_proxy:instance of Spec::Example::ExampleProxy

This method is invoked when an example is not yet implemented (i.e. has not been provided a block), or when an ExamplePendingError is raised. message is the message from the ExamplePendingError, if it exists, or the default value of "Not Yet Implemented". deprecated_pending_location is deprecated - use example_proxy.location instead

Parameters

example_proxy:instance of Spec::Example::ExampleProxy
message:the message passed to the pending message, or an internal default

This method is invoked when an example starts. The next method to be invoked after this is example_passed, example_failed, or example_pending

Parameters

example_proxy:instance of Spec::Example::ExampleProxy

This method is invoked before any examples are run, right after they have all been collected. This can be useful for special formatters that need to provide progress on feedback (graphical ones)

This method will only be invoked once, and the next one to be invoked is example_group_started

Parameters

example_count:the total number of examples to be run

This method is invoked after all of the examples have executed. The next method to be invoked after this one is dump_failure (once for each failed example)

[Validate]