aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--railties/lib/rails/commands/test/test_command.rb5
-rw-r--r--railties/lib/rails/test_unit/railtie.rb6
-rw-r--r--railties/test/application/runner_test.rb9
3 files changed, 14 insertions, 6 deletions
diff --git a/railties/lib/rails/commands/test/test_command.rb b/railties/lib/rails/commands/test/test_command.rb
index 1b2e3af9cc..e97b9cbbba 100644
--- a/railties/lib/rails/commands/test/test_command.rb
+++ b/railties/lib/rails/commands/test/test_command.rb
@@ -1,5 +1,6 @@
require "rails/command"
require "rails/test_unit/minitest_plugin"
+require "rails/test_unit/line_filtering"
module Rails
module Command
@@ -11,6 +12,10 @@ module Rails
def perform(*)
$LOAD_PATH << Rails::Command.root.join("test")
+ # Add test line filtering support for running test by line number
+ # via the command line.
+ ActiveSupport::TestCase.extend Rails::LineFiltering
+
Minitest.run_via[:rails] = true
require "active_support/testing/autorun"
diff --git a/railties/lib/rails/test_unit/railtie.rb b/railties/lib/rails/test_unit/railtie.rb
index d0fc795515..ec91673e40 100644
--- a/railties/lib/rails/test_unit/railtie.rb
+++ b/railties/lib/rails/test_unit/railtie.rb
@@ -1,5 +1,3 @@
-require "rails/test_unit/line_filtering"
-
if defined?(Rake.application) && Rake.application.top_level_tasks.grep(/^(default$|test(:|$))/).any?
ENV["RAILS_ENV"] ||= "test"
end
@@ -13,10 +11,6 @@ module Rails
c.integration_tool :test_unit
end
- initializer "test_unit.line_filtering" do
- ActiveSupport::TestCase.extend Rails::LineFiltering
- end
-
rake_tasks do
load "rails/test_unit/testing.rake"
end
diff --git a/railties/test/application/runner_test.rb b/railties/test/application/runner_test.rb
index 77e7a2cca5..8769703f66 100644
--- a/railties/test/application/runner_test.rb
+++ b/railties/test/application/runner_test.rb
@@ -43,6 +43,15 @@ module ApplicationTests
assert_match "42", Dir.chdir(app_path) { `bin/rails runner "bin/count_users.rb"` }
end
+ def test_no_minitest_loaded_in_production_mode
+ app_file "bin/print_features.rb", <<-SCRIPT
+ p $LOADED_FEATURES.grep(/minitest/)
+ SCRIPT
+ assert_match "[]", Dir.chdir(app_path) {
+ `RAILS_ENV=production bin/rails runner "bin/print_features.rb"`
+ }
+ end
+
def test_should_set_dollar_0_to_file
app_file "bin/dollar0.rb", <<-SCRIPT
puts $0