aboutsummaryrefslogtreecommitdiffstats
path: root/spec/ruby/library/etc/getgrgid_spec.rb
diff options
context:
space:
mode:
authoreregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-27 11:37:31 +0000
committereregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-06-27 11:37:31 +0000
commitfc1f3f14d386b557281ff9a8f19da060befe182e (patch)
tree3ba2c06f27bee1ac3de0fa21bce25ac4035bbc4b /spec/ruby/library/etc/getgrgid_spec.rb
parent80fdfbf8099d8e802b9faaef2eda1ffdb787d1ce (diff)
downloadruby-fc1f3f14d386b557281ff9a8f19da060befe182e.tar.gz
Update to ruby/spec@41068a6
* Only small fixes to specs from CRuby to review the diff more easily. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'spec/ruby/library/etc/getgrgid_spec.rb')
-rw-r--r--spec/ruby/library/etc/getgrgid_spec.rb94
1 files changed, 48 insertions, 46 deletions
diff --git a/spec/ruby/library/etc/getgrgid_spec.rb b/spec/ruby/library/etc/getgrgid_spec.rb
index ff07d49016..04758912b3 100644
--- a/spec/ruby/library/etc/getgrgid_spec.rb
+++ b/spec/ruby/library/etc/getgrgid_spec.rb
@@ -13,62 +13,64 @@ end
# TODO: verify these on non-windows, non-darwin OS
platform_is_not :windows do
- grpname = IO.popen(%w'id -gn', err: IO::NULL, &:read)
- next unless $?.success?
- grpname.chomp!
+ grpname = nil
+ guard -> {
+ grpname = IO.popen(%w'id -gn', err: IO::NULL, &:read).chomp
+ $?.success?
+ } do
+ describe "Etc.getgrgid" do
+ before :all do
+ @gid = `id -g`.strip.to_i
+ @name = grpname
+ end
- describe "Etc.getgrgid" do
- before :all do
- @gid = `id -g`.strip.to_i
- @name = grpname
- end
+ it "returns a Etc::Group struct instance for the given user" do
+ gr = Etc.getgrgid(@gid)
- it "returns a Etc::Group struct instance for the given user" do
- gr = Etc.getgrgid(@gid)
+ gr.is_a?(Etc::Group).should == true
+ gr.gid.should == @gid
+ gr.name.should == @name
+ end
- gr.is_a?(Etc::Group).should == true
- gr.gid.should == @gid
- gr.name.should == @name
- end
+ it "returns the Etc::Group for a given gid if it exists" do
+ grp = Etc.getgrgid(@gid)
+ grp.should be_kind_of(Etc::Group)
+ grp.gid.should == @gid
+ grp.name.should == @name
+ end
- it "returns the Etc::Group for a given gid if it exists" do
- grp = Etc.getgrgid(@gid)
- grp.should be_kind_of(Etc::Group)
- grp.gid.should == @gid
- grp.name.should == @name
- end
+ it "uses Process.gid as the default value for the argument" do
+ gr = Etc.getgrgid
- it "uses Process.gid as the default value for the argument" do
- gr = Etc.getgrgid
+ gr.gid.should == @gid
+ gr.name.should == @name
+ end
- gr.gid.should == @gid
- gr.name.should == @name
- end
+ it "returns the Group for a given gid if it exists" do
+ grp = Etc.getgrgid(@gid)
+ grp.should be_kind_of(Struct::Group)
+ grp.gid.should == @gid
+ grp.name.should == @name
+ end
- it "returns the Group for a given gid if it exists" do
- grp = Etc.getgrgid(@gid)
- grp.should be_kind_of(Struct::Group)
- grp.gid.should == @gid
- grp.name.should == @name
- end
-
- it "raises if the group does not exist" do
- lambda { Etc.getgrgid(9876)}.should raise_error(ArgumentError)
- end
+ it "raises if the group does not exist" do
+ lambda { Etc.getgrgid(9876)}.should raise_error(ArgumentError)
+ end
- it "raises a TypeError if not passed an Integer" do
- lambda { Etc.getgrgid("foo") }.should raise_error(TypeError)
- lambda { Etc.getgrgid(nil) }.should raise_error(TypeError)
- end
+ it "raises a TypeError if not passed an Integer" do
+ lambda { Etc.getgrgid("foo") }.should raise_error(TypeError)
+ lambda { Etc.getgrgid(nil) }.should raise_error(TypeError)
+ end
- it "can be called safely by multiple threads" do
- 20.times.map do
- Thread.new do
- 100.times do
- Etc.getgrgid(@gid).gid.should == @gid
+ it "can be called safely by multiple threads" do
+ 20.times.map do
+ Thread.new do
+ 100.times do
+ Etc.getgrgid(@gid).gid.should == @gid
+ end
end
- end
- end.each(&:join)
+ end.each(&:join)
+ end
end
end
end