From 106db0b419ede5bea7b93a9eb76ce6aa578b99b2 Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Tue, 2 Dec 2014 01:31:06 +0800 Subject: [PATCH] Silence Minitest for plugin tests. Fixes https://github.com/rails/rails/issues/17340. Use Minitest::BacktraceFilter instead of removing all silencers. This will allow the backtrace for all libraries in the plugin to be shown while removing noise generated by Minitest's backtrace. --- .../generators/rails/plugin/templates/test/test_helper.rb | 4 +++- railties/test/generators/plugin_generator_test.rb | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/railties/lib/rails/generators/rails/plugin/templates/test/test_helper.rb b/railties/lib/rails/generators/rails/plugin/templates/test/test_helper.rb index d492e68357..bf3da1fc4d 100644 --- a/railties/lib/rails/generators/rails/plugin/templates/test/test_helper.rb +++ b/railties/lib/rails/generators/rails/plugin/templates/test/test_helper.rb @@ -10,7 +10,9 @@ ActiveRecord::Migrator.migrations_paths << File.expand_path('../../db/migrate', <% end -%> require "rails/test_help" -Rails.backtrace_cleaner.remove_silencers! +# Filter out Minitest backtrace while allowing backtrace from other libraries +# to be shown. +Minitest.backtrace_filter = Minitest::BacktraceFilter.new # Load support files Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f } diff --git a/railties/test/generators/plugin_generator_test.rb b/railties/test/generators/plugin_generator_test.rb index 4329c6e1a4..dbc87be614 100644 --- a/railties/test/generators/plugin_generator_test.rb +++ b/railties/test/generators/plugin_generator_test.rb @@ -57,6 +57,7 @@ class PluginGeneratorTest < Rails::Generators::TestCase assert_file "test/test_helper.rb" do |content| assert_match(/require.+test\/dummy\/config\/environment/, content) assert_match(/ActiveRecord::Migrator\.migrations_paths.+test\/dummy\/db\/migrate/, content) + assert_match(/Minitest\.backtrace_filter = Minitest::BacktraceFilter\.new/, content) end assert_file "test/bukkits_test.rb", /assert_kind_of Module, Bukkits/ end