diff --git a/activerecord/test/support/tools.rb b/activerecord/test/support/tools.rb index e546dcaa8b6..000592d9690 100644 --- a/activerecord/test/support/tools.rb +++ b/activerecord/test/support/tools.rb @@ -11,11 +11,13 @@ require "active_support" require "active_support/test_case" require "rake/testtask" + Rails::TestUnit::Runner.singleton_class.prepend Module.new { private - def list_tests(argv) + def list_tests(patterns) tests = super - tests.concat FileList["test/cases/adapters/#{adapter_name}/**/*_test.rb"] + tests.concat FileList["test/cases/adapters/#{adapter_name}/**/*_test.rb"] if patterns.empty? + tests end def default_test_exclude_glob diff --git a/railties/lib/rails/test_unit/runner.rb b/railties/lib/rails/test_unit/runner.rb index 8f408e5195d..819580ac404 100644 --- a/railties/lib/rails/test_unit/runner.rb +++ b/railties/lib/rails/test_unit/runner.rb @@ -45,7 +45,8 @@ module Rails end def load_tests(argv) - tests = list_tests(argv) + patterns = extract_filters(argv) + tests = list_tests(patterns) tests.to_a.each { |path| require File.expand_path(path) } end @@ -96,9 +97,7 @@ module Rails PATH_ARGUMENT_PATTERN.match?(arg) end - def list_tests(argv) - patterns = extract_filters(argv) - + def list_tests(patterns) tests = Rake::FileList[patterns.any? ? patterns : default_test_glob] tests.exclude(default_test_exclude_glob) if patterns.empty? tests