In Files

  • test/unit.rb

Test::Unit::GlobOption

Public Instance Methods

non_options(files, options) click to toggle source
 
               # File test/unit.rb, line 167
def non_options(files, options)
  paths = [options.delete(:base_directory), nil].uniq
  if reject = options.delete(:reject)
    reject_pat = Regexp.union(reject.map {|r| /#{r}/ })
  end
  files.map! {|f|
    f = f.tr(File::ALT_SEPARATOR, File::SEPARATOR) if File::ALT_SEPARATOR
    ((paths if /\A\.\.?(?:\z|\/)/ !~ f) || [nil]).any? do |prefix|
      if prefix
        path = f.empty? ? prefix : "#{prefix}/#{f}"
      else
        next if f.empty?
        path = f
      end
      if !(match = Dir["#{path}/**/#{@@testfile_prefix}_*.rb"]).empty?
        if reject
          match.reject! {|n|
            n[(prefix.length+1)..-1] if prefix
            reject_pat =~ n
          }
        end
        break match
      elsif !reject or reject_pat !~ f and File.exist? path
        break path
      end
    end or
      raise ArgumentError, "file not found: #{f}"
  }
  files.flatten!
  super(files, options)
end
            
setup_options(parser, options) click to toggle source
 
               # File test/unit.rb, line 157
def setup_options(parser, options)
  super
  parser.on '-b', '--basedir=DIR', 'Base directory of test suites.' do |dir|
    options[:base_directory] = dir
  end
  parser.on '-x', '--exclude PATTERN', 'Exclude test files on pattern.' do |pattern|
    (options[:reject] ||= []) << pattern
  end
end
            

Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.

If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.

If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.

If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.

blog comments powered by Disqus