Namespace
Methods
#
N
S
Class Public methods
new(size)
# File actionpack/test/abstract_unit.rb, line 441
def initialize size
  @size  = size
  @queue = Server.new
  file   = File.join Dir.tmpdir, Dir::Tmpname.make_tmpname('rails-tests', 'fd')
  @url   = "drbunix://#{file}"
  @pool  = nil
  DRb.start_service @url, @queue
end
Instance Public methods
<<(work;)
# File actionpack/test/abstract_unit.rb, line 450
def << work; @queue << work; end
shutdown()
# File actionpack/test/abstract_unit.rb, line 452
def shutdown
  pool = @size.times.map {
    fork {
      DRb.stop_service
      queue = DRbObject.new_with_uri @url
      while job = queue.pop
        klass    = job[0]
        method   = job[1]
        reporter = job[2]
        result = Minitest.run_one_method klass, method
        if result.error?
          translate_exceptions result
        end
        queue.record reporter, result
      end
    }
  }
  @size.times { @queue << nil }
  pool.each { |pid| Process.waitpid pid }
end