Class: RSpec::Core::Notifications::ExamplesNotification

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec/core/notifications.rb

Overview

The ExamplesNotification represents notifications sent by the reporter which contain information about the suites examples.

Examples:

def stop(notification)
  puts "Hey I ran #{notification.examples.size}"
end

Instance Method Summary collapse

Constructor Details

#initialize(reporter) ⇒ ExamplesNotification



66
67
68
# File 'lib/rspec/core/notifications.rb', line 66

def initialize(reporter)
  @reporter = reporter
end

Instance Method Details

#examplesArray<RSpec::Core::Example>



71
72
73
# File 'lib/rspec/core/notifications.rb', line 71

def examples
  @reporter.examples
end

#failed_examplesArray<RSpec::Core::Example>



76
77
78
# File 'lib/rspec/core/notifications.rb', line 76

def failed_examples
  @reporter.failed_examples
end

#failure_notificationsArray<RSpec::Core::Notifications::FailedExampleNotification>



93
94
95
# File 'lib/rspec/core/notifications.rb', line 93

def failure_notifications
  @failed_notifications ||= format_examples(failed_examples)
end

#fully_formatted_failed_examples(colorizer = ::RSpec::Core::Formatters::ConsoleCodes) ⇒ String



106
107
108
109
110
111
112
113
114
# File 'lib/rspec/core/notifications.rb', line 106

def fully_formatted_failed_examples(colorizer=::RSpec::Core::Formatters::ConsoleCodes)
  formatted = "\nFailures:\n"

  failure_notifications.each_with_index do |failure, index|
    formatted << failure.fully_formatted(index.next, colorizer)
  end

  formatted
end

#fully_formatted_pending_examples(colorizer = ::RSpec::Core::Formatters::ConsoleCodes) ⇒ String



118
119
120
121
122
123
124
125
126
# File 'lib/rspec/core/notifications.rb', line 118

def fully_formatted_pending_examples(colorizer=::RSpec::Core::Formatters::ConsoleCodes)
  formatted = "\nPending: (Failures listed here are expected and do not affect your suite's status)\n"

  pending_notifications.each_with_index do |notification, index|
    formatted << notification.fully_formatted(index.next, colorizer)
  end

  formatted
end

#notificationsArray<RSpec::Core::Notifications::ExampleNotification>



87
88
89
# File 'lib/rspec/core/notifications.rb', line 87

def notifications
  @notifications ||= format_examples(examples)
end

#pending_examplesArray<RSpec::Core::Example>



81
82
83
# File 'lib/rspec/core/notifications.rb', line 81

def pending_examples
  @reporter.pending_examples
end

#pending_notificationsArray<RSpec::Core::Notifications::SkippedExampleNotification, RSpec::Core::Notifications::PendingExampleFailedAsExpectedNotification>

returns pending examples as notifications



100
101
102
# File 'lib/rspec/core/notifications.rb', line 100

def pending_notifications
  @pending_notifications ||= format_examples(pending_examples)
end