diff options
Diffstat (limited to 'test/runner.rb')
-rw-r--r-- | test/runner.rb | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/test/runner.rb b/test/runner.rb index c8a06e1dd9..aa7a5f8ba3 100644 --- a/test/runner.rb +++ b/test/runner.rb @@ -2,4 +2,24 @@ require 'rbconfig' exit if CROSS_COMPILING require 'test/unit' -Test::Unit.setup_argv + +src_testdir = File.dirname(File.expand_path(__FILE__)) +srcdir = File.dirname(src_testdir) + +Test::Unit.setup_argv {|files| + if files.empty? + [src_testdir] + else + files.map {|f| + if File.exist? f + f + elsif File.exist? "#{src_testdir}/#{f}" + "#{src_testdir}/#{f}" + elsif File.exist? "#{srcdir}/#{f}" + "#{srcdir}/#{f}" + else + raise ArgumentError, "not found: #{f}" + end + } + end +} |