Sha256: 82d1c80a4714d64f447729b8e3ff680ce5e1e1a3485ef68d2aff2bd9e86ad38d
Contents?: true
Size: 1.25 KB
Versions: 64
Compression:
Stored size: 1.25 KB
Contents
require File.dirname(File.join(__rhoGetCurrentDir(), __FILE__)) + '/../../spec_helper' describe "Process.waitall" do before :all do Process.waitall end it "returns an empty array when there are no children" do Process.waitall.should == [] end it "takes no arguments" do lambda { Process.waitall(0) }.should raise_error(ArgumentError) end =begin platform_is_not :windows do it "waits for all children" do pids = [] pids << Process.fork { Process.exit! 2 } pids << Process.fork { Process.exit! 1 } pids << Process.fork { Process.exit! 0 } Process.waitall pids.each { |pid| lambda { Process.kill(0, pid) }.should raise_error(Errno::ESRCH) } end it "returns an array of pid/status pairs" do pids = [] pids << Process.fork { Process.exit! 2 } pids << Process.fork { Process.exit! 1 } pids << Process.fork { Process.exit! 0 } a = Process.waitall a.class.should == Array a.size.should == 3 pids.each { |pid| pid_status = a.assoc(pid) pid_status.class.should == Array pid_status.size.should == 2 pid_status.first.should == pid pid_status.last.class.should == Process::Status } end end =end end
Version data entries
64 entries across 64 versions & 1 rubygems