Sha256: 430ae27045a82713e385c1924e0c1394bcf63e65bd6373132878b7943b7d00cf

Contents?: true

Size: 1.36 KB

Versions: 12

Compression:

Stored size: 1.36 KB

Contents

Feature: custom formatters

  RSpec ships with general purpose output formatters. You can tell RSpec which
  one to use using the [`--format` command line option](../command-line/format-option).

  When RSpec's built-in output formatters don't, however, give you everything
  you need, you can write your own custom formatter and tell RSpec to use that
  one instead. The simplest way is to subclass RSpec's `BaseTextFormatter`, and
  then override just the methods that you want to modify.

  Scenario: Custom formatter
    Given a file named "custom_formatter.rb" with:
      """ruby
      class CustomFormatter
        # This registers the notifications this formatter supports, and tells
        # us that this was written against the RSpec 3.x formatter API.
        RSpec::Core::Formatters.register self, :example_started

        def initialize(output)
          @output = output
        end

        def example_started(notification)
          @output << "example: " << notification.example.description
        end
      end
      """
    And a file named "example_spec.rb" with:
      """ruby
      RSpec.describe "my group" do
        specify "my example" do
        end
      end
      """
    When I run `rspec example_spec.rb --require ./custom_formatter.rb --format CustomFormatter`
    Then the output should contain "example: my example"
    And  the exit status should be 0

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
opal-rspec-1.1.0.alpha3 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-1.1.0.alpha2 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-1.1.0.alpha1 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-1.0.0 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-1.0.0.alpha1 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-0.8.0 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-0.8.0.alpha3 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-0.8.0.alpha2 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-0.8.0.alpha1 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-0.7.1 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-0.7.0 rspec-core/upstream/features/formatters/custom_formatter.feature
opal-rspec-0.7.0.rc.2 rspec-core/upstream/features/formatters/custom_formatter.feature