Module: Minitest
- Defined in:
- lib/minitest/rails_plugin.rb
Defined Under Namespace
Classes: BacktraceFilterWithFallback, SuppressedSummaryReporter
Class Method Summary collapse
-
.plugin_rails_init(options) ⇒ Object
Owes great inspiration to test runner trailblazers like RSpec, minitest-reporters, maxitest, and others.
- .plugin_rails_options(opts, options) ⇒ Object
Class Method Details
.plugin_rails_init(options) ⇒ Object
Owes great inspiration to test runner trailblazers like RSpec, minitest-reporters, maxitest, and others.
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/minitest/rails_plugin.rb', line 53 def self.plugin_rails_init() unless [:full_backtrace] || ENV["BACKTRACE"] # Plugin can run without Rails loaded, check before filtering. if ::Rails.respond_to?(:backtrace_cleaner) Minitest.backtrace_filter = BacktraceFilterWithFallback.new(::Rails.backtrace_cleaner, Minitest.backtrace_filter) end end # Suppress summary reports when outputting inline rerun snippets. if reporter.reporters.reject! { |reporter| reporter.kind_of?(SummaryReporter) } reporter << SuppressedSummaryReporter.new([:io], ) end # Replace progress reporter for colors. if reporter.reporters.reject! { |reporter| reporter.kind_of?(ProgressReporter) } reporter << ::Rails::TestUnitReporter.new([:io], ) end end |
.plugin_rails_options(opts, options) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/minitest/rails_plugin.rb', line 28 def self.(opts, ) ::Rails::TestUnit::Runner.(opts) opts.on("-b", "--backtrace", "Show the complete backtrace") do [:full_backtrace] = true end opts.on("-d", "--defer-output", "Output test failures and errors after the test run") do [:output_inline] = false end opts.on("-f", "--fail-fast", "Abort test run on first failure or error") do [:fail_fast] = true end opts.on("-c", "--[no-]color", "Enable color in the output") do |value| [:color] = value end [:color] = true [:output_inline] = true end |