class Test::Unit::Collector::Dir

def collect(*from)

def collect(*from)
  basedir = @base
  $:.push(basedir) if basedir
  if(from.empty?)
    suite = recursive_collect('.', find_test_cases)
  elsif(from.size == 1)
    suite = recursive_collect(from.first, find_test_cases)
  else
    suites = []
    from.each do |f|
      suite = recursive_collect(f, find_test_cases)
      suites << suite unless(suite.tests.empty?)
    end
    suite = TestSuite.new("[#{from.join(', ')}]")
    sort(suites).each{|s| suite << s}
    suite
  end
  adjust_ractor_tests(suite)
  suite
ensure
  $:.delete_at($:.rindex(basedir)) if basedir
end