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

ruby-changes:9164

From: yugui <ko1@a...>
Date: Sat, 13 Dec 2008 10:04:08 +0900 (JST)
Subject: [ruby-changes:9164] Ruby:r20701 (ruby_1_9_1): merges r20630 from trunk into ruby_1_9_1.

yugui	2008-12-13 10:03:08 +0900 (Sat, 13 Dec 2008)

  New Revision: 20701

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

  Log:
    merges r20630 from trunk into ruby_1_9_1.
    * test/ruby/test_io.rb (test_dup_many): extracted from test_dup.
      test in ruby subprocess.  at asakusa.rb.  [ruby-dev:35648]

  Modified files:
    branches/ruby_1_9_1/ChangeLog
    branches/ruby_1_9_1/test/ruby/test_io.rb

Index: ruby_1_9_1/ChangeLog
===================================================================
--- ruby_1_9_1/ChangeLog	(revision 20700)
+++ ruby_1_9_1/ChangeLog	(revision 20701)
@@ -1,3 +1,8 @@
+Thu Dec 11 19:23:09 2008  Tanaka Akira  <akr@f...>
+
+	* test/ruby/test_io.rb (test_dup_many): extracted from test_dup.
+	  test in ruby subprocess.  at asakusa.rb.  [ruby-dev:35648]
+
 Thu Dec 11 19:16:30 2008  Tanaka Akira  <akr@f...>
 
 	* lib/pathname.rb (Pathname#=~): undefed.  at asakusa.rb.
Index: ruby_1_9_1/test/ruby/test_io.rb
===================================================================
--- ruby_1_9_1/test/ruby/test_io.rb	(revision 20700)
+++ ruby_1_9_1/test/ruby/test_io.rb	(revision 20701)
@@ -651,18 +651,28 @@
       assert_equal("foo\nbar\n", f.read)
       assert_equal("", f2.read)
     end
+  end
 
-    a = []
-    assert_raise(Errno::EMFILE, Errno::ENFILE, Errno::ENOMEM) do
-      loop {a << IO.pipe}
-    end
-    assert_raise(Errno::EMFILE, Errno::ENFILE, Errno::ENOMEM) do
-      loop {a << [a[-1][0].dup, a[-1][1].dup]}
-    end
-    a.each do |r, w|
-      r.close unless !r || r.closed?
-      w.close unless !w || w.closed?
-    end
+  def test_dup_many
+    ruby('-e', <<-'End') {|f|
+      ok = 0
+      a = []
+      begin
+        loop {a << IO.pipe}
+      rescue Errno::EMFILE, Errno::ENFILE, Errno::ENOMEM
+        ok += 1
+      end
+      print "no" if ok != 1
+      begin
+        loop {a << [a[-1][0].dup, a[-1][1].dup]}
+      rescue Errno::EMFILE, Errno::ENFILE, Errno::ENOMEM
+        ok += 1
+      end
+      print "no" if ok != 2
+      print "ok"
+    End
+      assert_equal("ok", f.read)
+    }
   end
 
   def test_inspect

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

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