diff --git a/lib/rspec/core/formatters/exception_presenter.rb b/lib/rspec/core/formatters/exception_presenter.rb index db612e8858..4deecda228 100644 --- a/lib/rspec/core/formatters/exception_presenter.rb +++ b/lib/rspec/core/formatters/exception_presenter.rb @@ -175,12 +175,14 @@ def failure_slash_error_lines end def exception_lines - lines = [] - lines << "#{exception_class_name}:" unless exception_class_name =~ /RSpec/ - encoded_string(exception.message.to_s).split("\n").each do |line| - lines << (line.empty? ? line : " #{line}") + @exception_lines ||= begin + lines = [] + lines << "#{exception_class_name}:" unless exception_class_name =~ /RSpec/ + encoded_string(exception.message.to_s).split("\n").each do |line| + lines << (line.empty? ? line : " #{line}") + end + lines end - lines end def extra_failure_lines