aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails
diff options
context:
space:
mode:
authorArthur Neves <arthurnn@gmail.com>2015-01-29 10:39:43 -0500
committerYves Senn <yves.senn@gmail.com>2015-03-18 09:52:18 +0100
commitde94929d70d94fd8bb20791bf544ee483db8ddc1 (patch)
tree6a5cd71e4889ff704f2a9f122e1fc0e67636739c /railties/lib/rails
parent3cc783b6bf20da27079038e7c52ce214f1042df3 (diff)
downloadrails-de94929d70d94fd8bb20791bf544ee483db8ddc1.tar.gz
rails-de94929d70d94fd8bb20791bf544ee483db8ddc1.tar.bz2
rails-de94929d70d94fd8bb20791bf544ee483db8ddc1.zip
Fix relative dir call on test runner
Diffstat (limited to 'railties/lib/rails')
-rw-r--r--railties/lib/rails/test_unit/runner.rb15
1 files changed, 10 insertions, 5 deletions
diff --git a/railties/lib/rails/test_unit/runner.rb b/railties/lib/rails/test_unit/runner.rb
index a970039b93..6f9c3690f5 100644
--- a/railties/lib/rails/test_unit/runner.rb
+++ b/railties/lib/rails/test_unit/runner.rb
@@ -53,12 +53,17 @@ module Rails
options[:patterns] = []
while arg = args.shift
- if Dir.exists?(arg)
- options[:patterns] << "#{arg}/**/*_test.rb"
- else
- options[:filename], options[:line] = arg.split(':')
+ if (file_and_line = arg.split(':')).size > 1
+ options[:filename], options[:line] = file_and_line
options[:filename] = File.expand_path options[:filename]
options[:line] &&= options[:line].to_i
+ else
+ arg = arg.gsub(':', '')
+ if Dir.exists?("test/#{arg}")
+ options[:patterns] << File.expand_path("test/#{arg}/**/*_test.rb")
+ elsif File.file?(arg)
+ options[:patterns] << File.expand_path(arg)
+ end
end
end
options
@@ -96,7 +101,7 @@ module Rails
def test_files
return [@options[:filename]] if @options[:filename]
- if @options[:patterns]
+ if @options[:patterns] && @options[:patterns].count > 0
pattern = @options[:patterns]
else
pattern = "test/**/*_test.rb"