Module: RSpec::Core::Formatters
- Defined in:
- lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/helpers.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/protocol.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/html_printer.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/console_codes.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/base_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/html_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/json_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/profile_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/snippet_extractor.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/progress_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/syntax_highlighter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/base_text_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/exception_presenter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/bisect_drb_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/base_bisect_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/deprecation_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/failure_list_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/html_snippet_extractor.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/documentation_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/bisect_progress_formatter.rb,
lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters/fallback_message_formatter.rb
Overview
## Built-in Formatters
-
progress (default) - Prints dots for passing examples, ‘F` for failures, `*`
for pending.
-
documentation - Prints the docstrings passed to ‘describe` and `it` methods
(and their aliases).
-
html
-
json - Useful for archiving data for subsequent analysis.
The progress formatter is the default, but you can choose any one or more of the other formatters by passing with the ‘–format` (or `-f` for short) command-line option, e.g.
rspec --format documentation
You can also send the output of multiple formatters to different streams, e.g.
rspec --format documentation --format html --out results.html
This example sends the output of the documentation formatter to ‘$stdout`, and the output of the html formatter to results.html.
## Custom Formatters
You can tell RSpec to use a custom formatter by passing its path and name to the ‘rspec` command. For example, if you define MyCustomFormatter in path/to/my_custom_formatter.rb, you would type this command:
rspec --require path/to/my_custom_formatter.rb --format MyCustomFormatter
The reporter calls every formatter with this protocol:
-
To start
-
‘start(StartNotification)`
-
-
Once per example group
-
‘example_group_started(GroupNotification)`
-
-
Once per example
-
‘example_started(ExampleNotification)`
-
-
One of these per example, depending on outcome
-
‘example_passed(ExampleNotification)`
-
‘example_failed(FailedExampleNotification)`
-
‘example_pending(ExampleNotification)`
-
-
Optionally at any time
-
‘message(MessageNotification)`
-
-
At the end of the suite
-
‘stop(ExamplesNotification)`
-
‘start_dump(NullNotification)`
-
‘dump_pending(ExamplesNotification)`
-
‘dump_failures(ExamplesNotification)`
-
‘dump_summary(SummaryNotification)`
-
‘seed(SeedNotification)`
-
‘close(NullNotification)`
-
Only the notifications to which you subscribe your formatter will be called on your formatter. To subscribe your formatter use: ‘RSpec::Core::Formatters#register` e.g.
‘RSpec::Core::Formatters.register FormatterClassName, :example_passed, :example_failed`
We recommend you implement the methods yourself; for simplicity we provide the default formatter output via our notification objects but if you prefer you can subclass ‘RSpec::Core::Formatters::BaseTextFormatter` and override the methods you wish to enhance.
Defined Under Namespace
Modules: ConsoleCodes, Helpers Classes: BaseBisectFormatter, BaseFormatter, BaseTextFormatter, BisectDRbFormatter, BisectDebugFormatter, BisectProgressFormatter, DeprecationFormatter, DocumentationFormatter, ExceptionPresenter, FailureListFormatter, FallbackMessageFormatter, HtmlFormatter, HtmlPrinter, HtmlSnippetExtractor, JsonFormatter, Loader, ProfileFormatter, ProgressFormatter, Protocol, SnippetExtractor, SyntaxHighlighter
Class Method Summary collapse
-
.register(formatter_class, *notifications) ⇒ Object
Register the formatter class.
Class Method Details
.register(formatter_class, *notifications) ⇒ Object
Register the formatter class
86 87 88 |
# File 'lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/rspec-core-3.12.0/lib/rspec/core/formatters.rb', line 86 def self.register(formatter_class, *notifications) Loader.formatters[formatter_class] = notifications end |