1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/test/runner.rb
drbrain a42df5094d Fix some RDoc and RubyGems test interactions. Fix -n in test/runner.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-29 22:48:11 +00:00

51 lines
1.1 KiB
Ruby

require 'rbconfig'
exit if CROSS_COMPILING
require 'test/unit'
rcsid = %w$Id$
Version = rcsid[2].scan(/\d+/).collect!(&method(:Integer)).freeze
Release = rcsid[3].freeze
class Module
def tu_deprecation_warning old, new = nil, kaller = nil
# stfu - for now...
end
end
test_dir = File.dirname(__FILE__)
# not sure why these are needed now... but whatever
$:.push(*Dir[File.join(test_dir, '*')].find_all { |path| File.directory? path })
test_files = (Dir[File.join(test_dir, "test_*.rb")] +
Dir[File.join(test_dir, "**/test_*.rb")])
files = []
other = []
until ARGV.empty? do
arg = ARGV.shift
case arg
when /^-x$/ then
filter = ARGV.shift
test_files.reject! { |f| f =~ /#{filter}/ }
when /^--$/ then
other.push(*ARGV)
ARGV.clear
break
when /^-(n|-name)$/ then
other.push arg, ARGV.shift
when /^-/ then
other << arg
else
files << arg
end
end
test_files = test_files.grep(Regexp.union(*files)) unless files.empty?
ARGV.replace other # this passes through to miniunit
test_files.each do |test|
require test
end