aboutsummaryrefslogtreecommitdiffstats
path: root/test/etc
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-10 07:15:12 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-01-10 07:15:12 +0000
commit8ed8e0ba417390c117763073c44ebe45eb8afa68 (patch)
treec800888fb6ed38f9726c01c7e00ff46a7694ae72 /test/etc
parent54f1d71ab24d0c0a4dd49cfe6b1a0db07d89f81c (diff)
downloadruby-8ed8e0ba417390c117763073c44ebe45eb8afa68.tar.gz
test_etc.rb: relax comparisons
* test/etc/test_etc.rb (test_getgrgid, test_getgrnam): relax comparisons. getgrent() does not return mem properly in some circumstances (possibly, involved in Open Directory on OSX). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/etc')
-rw-r--r--test/etc/test_etc.rb14
1 files changed, 8 insertions, 6 deletions
diff --git a/test/etc/test_etc.rb b/test/etc/test_etc.rb
index 374b379fc4..5ac09a781b 100644
--- a/test/etc/test_etc.rb
+++ b/test/etc/test_etc.rb
@@ -83,23 +83,25 @@ class TestEtc < Test::Unit::TestCase
groups = Hash.new {[]}
# on MacOSX, same entries are returned from /etc/group and Open
# Directory.
- Etc.group {|s| groups[s.gid] |= [s]}
+ Etc.group {|s| groups[s.gid] |= [[s.name, s.gid]]}
groups.each_pair do |gid, s|
- assert_include(s, Etc.getgrgid(gid))
+ g = Etc.getgrgid(gid)
+ assert_include(s, [g.name, g.gid])
end
s = groups[Process.egid]
unless s.empty?
- assert_include(s, Etc.getgrgid)
+ g = Etc.getgrgid
+ assert_include(s, [g.name, g.gid])
end
end
def test_getgrnam
groups = {}
Etc.group do |s|
- groups[s.name] ||= s unless /\A\+/ =~ s.name
+ groups[s.name] ||= s.gid unless /\A\+/ =~ s.name
end
- groups.each_value do |s|
- assert_equal(s, Etc.getgrnam(s.name))
+ groups.each_pair do |n, s|
+ assert_equal(s, Etc.getgrnam(n).gid)
end
end