[前][次][番号順一覧][スレッド一覧]

ruby-changes:37123

From: nobu <ko1@a...>
Date: Sat, 10 Jan 2015 16:15:24 +0900 (JST)
Subject: [ruby-changes:37123] nobu:r49204 (trunk): test_etc.rb: relax comparisons

nobu	2015-01-10 16:15:12 +0900 (Sat, 10 Jan 2015)

  New Revision: 49204

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=49204

  Log:
    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).

  Modified files:
    trunk/test/etc/test_etc.rb
Index: test/etc/test_etc.rb
===================================================================
--- test/etc/test_etc.rb	(revision 49203)
+++ test/etc/test_etc.rb	(revision 49204)
@@ -83,23 +83,25 @@ class TestEtc < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/etc/test_etc.rb#L83
     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
 

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]