Sha256: 793f0fbc30f1b67491112767262d624baef101d77e8c3483bda9d869a60f6184
Contents?: true
Size: 1.17 KB
Versions: 52
Compression:
Stored size: 1.17 KB
Contents
require File.expand_path('../../../spec_helper', __FILE__) if System.get_property('platform') != 'APPLE' # TODO: put these in the right files. describe "Process.setpgrp and Process.getpgrp" do platform_is_not :windows do it "set and get the process group ID of the calling process" do # there are two synchronization points here: # One for the child to let the parent know that it has finished # setting its process group; # and another for the parent to let the child know that it's ok to die. read1, write1 = IO.pipe read2, write2 = IO.pipe pid = Process.fork do read1.close write2.close Process.setpgrp write1 << Process.getpgrp write1.close read2.read(1) read2.close Process.exit! end write1.close read2.close pgid = read1.read # wait for child to change process groups read1.close Process.getpgid(pid).should == pgid.to_i write2 << "!" write2.close end end describe "Process.setpgrp" do platform_is_not :windows do it "returns zero" do Process.setpgrp.should == 0 end end end end end
Version data entries
52 entries across 52 versions & 2 rubygems