From d4502a676715d699f620c14e27e1de79ba86fa49 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 4 Feb 2017 05:23:48 +0000 Subject: test/unit.rb: jobserver for workers * test/lib/test/unit.rb (Test::Unit::Parallel#process_args): initialize @run_options to pass jobserver auth pipes to worker processes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/lib/test/unit.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/test/lib/test/unit.rb b/test/lib/test/unit.rb index c0662f580d..9173e5414c 100644 --- a/test/lib/test/unit.rb +++ b/test/lib/test/unit.rb @@ -131,6 +131,9 @@ module Test if @options[:parallel] @files = args end + if @jobserver + @run_options << @jobserver.each_with_object({}) {|fd, opts| opts[fd] = fd} + end options end @@ -191,11 +194,9 @@ module Test class Worker def self.launch(ruby,args=[]) - opts = {} - @jobserver.each {|fd| opts[fd] = fd} if @jobserver io = IO.popen([*ruby, "-W1", "#{File.dirname(__FILE__)}/unit/parallel.rb", - *args], "rb+", opts) + *args], "rb+") new(io, io.pid, :waiting) end -- cgit v1.2.3