diff options
Diffstat (limited to 'spec/rubyspec/core/process/groups_spec.rb')
| -rw-r--r-- | spec/rubyspec/core/process/groups_spec.rb | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/spec/rubyspec/core/process/groups_spec.rb b/spec/rubyspec/core/process/groups_spec.rb deleted file mode 100644 index 0669258bf3..0000000000 --- a/spec/rubyspec/core/process/groups_spec.rb +++ /dev/null @@ -1,54 +0,0 @@ -require File.expand_path('../../../spec_helper', __FILE__) - -describe "Process.groups" do - platform_is_not :windows do - it "gets an Array of the gids of groups in the supplemental group access list" do - groups = `id -G`.scan(/\d+/).map { |i| i.to_i } - gid = Process.gid - - expected = (groups.sort - [gid]).sort - actual = (Process.groups - [gid]).sort - actual.should == expected - end - - # NOTE: This is kind of sketchy. - it "sets the list of gids of groups in the supplemental group access list" do - groups = Process.groups - if Process.uid == 0 - Process.groups = [] - Process.groups.should == [] - Process.groups = groups - Process.groups.sort.should == groups.sort - else - platform_is :aix do - # setgroups() is not part of the POSIX standard, - # so its behavior varies from OS to OS. AIX allows a non-root - # process to set the supplementary group IDs, as long as - # they are presently in its supplementary group IDs. - # The order of the following tests matters. - # After this process executes "Process.groups = []" - # it should no longer be able to set any supplementary - # group IDs, even if it originally belonged to them. - # It should only be able to set its primary group ID. - Process.groups = groups - Process.groups.sort.should == groups.sort - Process.groups = [] - Process.groups.should == [] - Process.groups = [ Process.gid ] - Process.groups.should == [ Process.gid ] - supplementary = groups - [ Process.gid ] - if supplementary.length > 0 - lambda { Process.groups = supplementary }.should raise_error(Errno::EPERM) - end - end - platform_is_not :aix do - lambda { Process.groups = [] }.should raise_error(Errno::EPERM) - end - end - end - end -end - -describe "Process.groups=" do - it "needs to be reviewed for spec completeness" -end |
