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

ruby-changes:15661

From: nobu <ko1@a...>
Date: Sat, 1 May 2010 22:54:20 +0900 (JST)
Subject: [ruby-changes:15661] Ruby:r27578 (trunk): * lib/tempfile.rb (Tempfile#size): stat by path name when it is

nobu	2010-05-01 22:54:01 +0900 (Sat, 01 May 2010)

  New Revision: 27578

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

  Log:
    * lib/tempfile.rb (Tempfile#size): stat by path name when it is
      closed.

  Modified files:
    trunk/ChangeLog
    trunk/lib/tempfile.rb
    trunk/test/test_tempfile.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 27577)
+++ ChangeLog	(revision 27578)
@@ -1,5 +1,8 @@
-Sat May  1 22:41:05 2010  Nobuyoshi Nakada  <nobu@r...>
+Sat May  1 22:53:57 2010  Nobuyoshi Nakada  <nobu@r...>
 
+	* lib/tempfile.rb (Tempfile#size): stat by path name when it is
+	  closed.
+
 	* lib/test/unit/assertions.rb (Test::Unit::Assertions#assert):
 	  keep the first trace.
 
Index: lib/tempfile.rb
===================================================================
--- lib/tempfile.rb	(revision 27577)
+++ lib/tempfile.rb	(revision 27578)
@@ -255,6 +255,8 @@
     if @tmpfile
       @tmpfile.flush
       @tmpfile.stat.size
+    elsif @tmpname
+      File.size(@tmpname)
     else
       0
     end
Index: test/test_tempfile.rb
===================================================================
--- test/test_tempfile.rb	(revision 27577)
+++ test/test_tempfile.rb	(revision 27578)
@@ -153,7 +153,7 @@
   end
 
   def test_finalizer_does_not_unlink_if_already_unlinked
-    assert_in_out_err('-rtempfile', <<-'EOS') do |(filename), (error)|
+    assert_in_out_err('-rtempfile', <<-'EOS') do |(filename,), (error,)|
 file = Tempfile.new('foo')
 path = file.path
 puts path
@@ -165,7 +165,7 @@
       assert_nil error
     end
 
-    assert_in_out_err('-rtempfile', <<-'EOS') do |(filename), (error)|
+    assert_in_out_err('-rtempfile', <<-'EOS') do |(filename,), (error,)|
 file = Tempfile.new('foo')
 path = file.path
 file.unlink
@@ -191,11 +191,11 @@
     t = tempfile("foo")
     t.write("hello")
     t.close
-    assert 5, File.size(t.path)
+    assert_equal 5, File.size(t.path)
   end
 
   def test_tempfile_is_unlinked_when_ruby_exits
-    assert_in_out_err('-rtempfile', <<-'EOS') do |(filename), (error)|
+    assert_in_out_err('-rtempfile', <<-'EOS') do |(filename,), (error,)|
 puts Tempfile.new('foo').path
     EOS
       assert !File.exist?(filename)
@@ -205,16 +205,16 @@
   def test_size_flushes_buffer_before_determining_file_size
     t = tempfile("foo")
     t.write("hello")
-    assert 0, File.size(t.path)
-    assert 5, t.size
-    assert 5, File.size(t.path)
+    assert_equal 0, File.size(t.path)
+    assert_equal 5, t.size
+    assert_equal 5, File.size(t.path)
   end
 
   def test_size_works_if_file_is_closed
     t = tempfile("foo")
     t.write("hello")
     t.close
-    assert 5, t.size
+    assert_equal 5, t.size
   end
 
   def test_concurrency

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

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