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

ruby-changes:19898

From: kazu <ko1@a...>
Date: Tue, 7 Jun 2011 03:35:14 +0900 (JST)
Subject: [ruby-changes:19898] kazu:r31945 (trunk): * test/ruby/test_io.rb (TestIO#test_s_{,bin}write): do not create a file

kazu	2011-06-07 03:35:06 +0900 (Tue, 07 Jun 2011)

  New Revision: 31945

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

  Log:
    * test/ruby/test_io.rb (TestIO#test_s_{,bin}write): do not create a file
      under /tmp. [Bug #4846]

  Modified files:
    trunk/ChangeLog
    trunk/test/ruby/test_io.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 31944)
+++ ChangeLog	(revision 31945)
@@ -1,3 +1,8 @@
+Tue Jun  7 03:18:45 2011  Kazuhiro NISHIYAMA  <zn@m...>
+
+	* test/ruby/test_io.rb (TestIO#test_s_{,bin}write): do not create a
+	  file under /tmp. [Bug #4846]
+
 Mon Jun  6 22:51:43 2011  CHIKANAGA Tomoyuki  <nagachika00@g...>
 
 	* cont.c: use #if FIBER_USE_NATIVE instead of #ifdef.
Index: test/ruby/test_io.rb
===================================================================
--- test/ruby/test_io.rb	(revision 31944)
+++ test/ruby/test_io.rb	(revision 31945)
@@ -1866,60 +1866,58 @@
   end
 
   def test_s_write
-    t = Tempfile.new("foo")
-    path = t.path
-    t.close(false)
-    File.write(path, "foo\nbar\nbaz")
-    assert_equal("foo\nbar\nbaz", File.read(path))
-    File.write(path, "FOO", 0)
-    assert_equal("FOO\nbar\nbaz", File.read(path))
-    File.write(path, "BAR")
-    assert_equal("BAR", File.read(path))
-    File.write(path, "\u{3042}", mode: "w", encoding: "EUC-JP")
-    assert_equal("\u{3042}".encode("EUC-JP"), File.read(path, encoding: "EUC-JP"))
-    File.delete t
-    assert_equal(6, File.write(path,'string',2))
-    File.delete t
-    assert_raise(Errno::EINVAL) { File.write('/tmp/nonexisting','string',-2) }
-    assert_equal(6, File.write(path, 'string'))
-    assert_equal(3, File.write(path, 'sub', 1))
-    assert_equal("ssubng", File.read(path))
-    File.delete t
-    assert_equal(3, File.write(path, "foo", encoding: "UTF-8"))
-    File.delete t
-    assert_equal(3, File.write(path, "foo", 0, encoding: "UTF-8"))
-    assert_equal("foo", File.read(path))
-    assert_equal(1, File.write(path, "f", 1, encoding: "UTF-8"))
-    assert_equal("ffo", File.read(path))
-    File.delete t
-    assert_equal(1, File.write(path, "f", 1, encoding: "UTF-8"))
-    assert_equal("\00f", File.read(path))
-    assert_equal(1, File.write(path, "f", 0, encoding: "UTF-8"))
-    assert_equal("ff", File.read(path))
-    t.unlink
+    mkcdtmpdir do
+      path = "test_s_write"
+      File.write(path, "foo\nbar\nbaz")
+      assert_equal("foo\nbar\nbaz", File.read(path))
+      File.write(path, "FOO", 0)
+      assert_equal("FOO\nbar\nbaz", File.read(path))
+      File.write(path, "BAR")
+      assert_equal("BAR", File.read(path))
+      File.write(path, "\u{3042}", mode: "w", encoding: "EUC-JP")
+      assert_equal("\u{3042}".encode("EUC-JP"), File.read(path, encoding: "EUC-JP"))
+      File.delete path
+      assert_equal(6, File.write(path, 'string', 2))
+      File.delete path
+      assert_raise(Errno::EINVAL) { File.write('nonexisting','string', -2) }
+      assert_equal(6, File.write(path, 'string'))
+      assert_equal(3, File.write(path, 'sub', 1))
+      assert_equal("ssubng", File.read(path))
+      File.delete path
+      assert_equal(3, File.write(path, "foo", encoding: "UTF-8"))
+      File.delete path
+      assert_equal(3, File.write(path, "foo", 0, encoding: "UTF-8"))
+      assert_equal("foo", File.read(path))
+      assert_equal(1, File.write(path, "f", 1, encoding: "UTF-8"))
+      assert_equal("ffo", File.read(path))
+      File.delete path
+      assert_equal(1, File.write(path, "f", 1, encoding: "UTF-8"))
+      assert_equal("\00f", File.read(path))
+      assert_equal(1, File.write(path, "f", 0, encoding: "UTF-8"))
+      assert_equal("ff", File.read(path))
+    end
   end
 
   def test_s_binwrite
-    t = Tempfile.new("foo")
-    path = t.path
-    t.close(false)
-    File.binwrite(path, "foo\nbar\nbaz")
-    assert_equal("foo\nbar\nbaz", File.read(path))
-    File.binwrite(path, "FOO", 0)
-    assert_equal("FOO\nbar\nbaz", File.read(path))
-    File.binwrite(path, "BAR")
-    assert_equal("BAR", File.read(path))
-    File.binwrite(path, "\u{3042}")
-    assert_equal("\u{3042}".force_encoding("ASCII-8BIT"), File.binread(path))
-    File.delete t
-    assert_equal(6, File.binwrite(path,'string',2))
-    File.delete t
-    assert_equal(6, File.binwrite(path, 'string'))
-    assert_equal(3, File.binwrite(path, 'sub', 1))
-    assert_equal("ssubng", File.binread(path))
-    assert_equal(6, File.size(path))
-    assert_raise(Errno::EINVAL) { File.binwrite('/tmp/nonexisting','string',-2) }
-    assert_nothing_raised(TypeError) { File.binwrite(path, "string", mode: "w", encoding: "EUC-JP") }
-    t.unlink
+    mkcdtmpdir do
+      path = "test_s_binwrite"
+      File.binwrite(path, "foo\nbar\nbaz")
+      assert_equal("foo\nbar\nbaz", File.read(path))
+      File.binwrite(path, "FOO", 0)
+      assert_equal("FOO\nbar\nbaz", File.read(path))
+      File.binwrite(path, "BAR")
+      assert_equal("BAR", File.read(path))
+      File.binwrite(path, "\u{3042}")
+      assert_equal("\u{3042}".force_encoding("ASCII-8BIT"), File.binread(path))
+      File.delete path
+      assert_equal(6, File.binwrite(path, 'string', 2))
+      File.delete path
+      assert_equal(6, File.binwrite(path, 'string'))
+      assert_equal(3, File.binwrite(path, 'sub', 1))
+      assert_equal("ssubng", File.binread(path))
+      assert_equal(6, File.size(path))
+      assert_raise(Errno::EINVAL) { File.binwrite('nonexisting', 'string', -2) }
+      assert_nothing_raised(TypeError) { File.binwrite(path, "string", mode: "w", encoding: "EUC-JP") }
+    end
   end
 end

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

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