Module: RSpec::ExampleSteps::Reporter

Defined in:
lib/rspec/example_steps/reporter.rb

Instance Method Summary collapse

Instance Method Details

#example_step_failed(example, type, message, options) ⇒ Object



32
33
34
# File 'lib/rspec/example_steps/reporter.rb', line 32

def example_step_failed(example, type, message, options)
  notify :example_step_failed, Notification.new(example, type, message, options)
end

#example_step_passed(example, type, message, options) ⇒ Object



24
25
26
# File 'lib/rspec/example_steps/reporter.rb', line 24

def example_step_passed(example, type, message, options)
  notify :example_step_passed, Notification.new(example, type, message, options)
end

#example_step_pending(example, type, message, options) ⇒ Object



28
29
30
# File 'lib/rspec/example_steps/reporter.rb', line 28

def example_step_pending(example, type, message, options)
  notify :example_step_pending, Notification.new(example, type, message, options)
end

#example_step_started(example, type, message, options) ⇒ Object



20
21
22
# File 'lib/rspec/example_steps/reporter.rb', line 20

def example_step_started(example, type, message, options)
  notify :example_step_started, Notification.new(example, type, message, options)
end

#find_registered_formatter(klass) ⇒ Object



40
41
42
# File 'lib/rspec/example_steps/reporter.rb', line 40

def find_registered_formatter(klass)
  registered_formatters.detect { |formatter| formatter.class == klass }
end

#process_example_step(example, type, message, options) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/rspec/example_steps/reporter.rb', line 4

def process_example_step(example, type, message, options)
  example_step_started(self, type, message, options)

  if block_given? && !options[:pending]
    begin
      yield
    rescue Exception => e
      example_step_failed(self, type, message, options)
      raise e
    end
    example_step_passed(self, type, message, options)
  else
    example_step_pending(self, type, message, options)
  end
end

#registered_formattersObject



36
37
38
# File 'lib/rspec/example_steps/reporter.rb', line 36

def registered_formatters
  @listeners.values.map(&:to_a).flatten.uniq
end