aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/test_unit/reporter.rb
blob: 6d33fae911f05c1d0ac54ea19644c0291e642f27 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
require "minitest"

module Rails
  class TestUnitReporter < Minitest::StatisticsReporter
    def report
      return if passed?
      io.puts
      io.puts "Failed test:"
      io.puts
      io.puts aggregated_results
    end

    def aggregated_results # :nodoc:
      filtered_results = results.dup
      filtered_results.reject!(&:skipped?) unless options[:verbose]
      filtered_results.map do |result|
        result.failures.map { |failure|
          "bin/rails test #{failure.location}\n"
        }.join "\n"
      end.join
    end
  end
end