Hide Minitest's aggregated results if outputting inline.
We'd see the failures and errors reported after the run, which is needless, when we've already reported them. Turns: ``` .......................................S....................F This failed bin/rails test test/models/bunny_test.rb:14 .... Finished in 0.100886s, 1020.9583 runs/s, 1001.1338 assertions/s. 2) Failure: BunnyTest#test_something_failing [/Users/kasperhansen/Documents/code/collection_caching_test/test/models/bunny_test.rb:15]: This failed 103 runs, 101 assertions, 1 failures, 0 errors, 1 skips You have skipped tests. Run with --verbose for details. ``` Into: ``` ...................S.......................................F This failed bin/rails test test/models/bunny_test.rb:14 ...................... Finished in 0.069910s, 1473.3225 runs/s, 1444.7143 assertions/s. 103 runs, 101 assertions, 1 failures, 0 errors, 1 skips ```
This commit is contained in:
parent
5ddf6df966
commit
da832016bf
@ -3,6 +3,16 @@
|
||||
require "rails/test_unit/test_requirer"
|
||||
|
||||
module Minitest
|
||||
mattr_accessor(:hide_aggregated_results) { false }
|
||||
|
||||
module AggregatedResultSuppresion
|
||||
def aggregated_results
|
||||
super unless Minitest.hide_aggregated_results
|
||||
end
|
||||
end
|
||||
|
||||
SummaryReporter.prepend AggregatedResultSuppresion
|
||||
|
||||
def self.plugin_rails_options(opts, options)
|
||||
opts.separator ""
|
||||
opts.separator "Usage: bin/rails test [options] [files or directories]"
|
||||
@ -38,6 +48,7 @@ def self.plugin_rails_options(opts, options)
|
||||
options[:fail_fast] = true
|
||||
end
|
||||
|
||||
options[:output_inline] = true
|
||||
options[:patterns] = opts.order!
|
||||
end
|
||||
|
||||
@ -63,6 +74,9 @@ def self.plugin_rails_init(options)
|
||||
Minitest.backtrace_filter = ::Rails.backtrace_cleaner if ::Rails.respond_to?(:backtrace_cleaner)
|
||||
end
|
||||
|
||||
# Disable the extra failure output after a run, unless output is deferred.
|
||||
self.hide_aggregated_results = options[:output_inline]
|
||||
|
||||
self.reporter << ::Rails::TestUnitReporter.new(options[:io], options)
|
||||
end
|
||||
|
||||
|
@ -355,6 +355,21 @@ def test_post
|
||||
assert_match %r{Running:\n\nF\n\nwups!\n\nbin/rails test test/models/post_test.rb:4}, output
|
||||
end
|
||||
|
||||
def test_no_failure_output_after_run_if_outputting_inline
|
||||
app_file 'test/models/post_test.rb', <<-RUBY
|
||||
require 'test_helper'
|
||||
|
||||
class PostTest < ActiveSupport::TestCase
|
||||
def test_post
|
||||
assert false, 'wups!'
|
||||
end
|
||||
end
|
||||
RUBY
|
||||
|
||||
output = run_test_command('test/models/post_test.rb')
|
||||
assert_match %r{Finished in.*\n\n1 runs, 1 assertions}, output
|
||||
end
|
||||
|
||||
def test_fail_fast
|
||||
app_file 'test/models/post_test.rb', <<-RUBY
|
||||
require 'test_helper'
|
||||
|
Loading…
Reference in New Issue
Block a user