From 0c8fdb2c40a2b9aac59e3f0cdc8fe66245984f90 Mon Sep 17 00:00:00 2001 From: akr Date: Wed, 24 Oct 2007 05:55:26 +0000 Subject: use Dir.mktmpdir. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_file.rb | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'test/ruby/test_file.rb') diff --git a/test/ruby/test_file.rb b/test/ruby/test_file.rb index 2670933de..49203ab2e 100644 --- a/test/ruby/test_file.rb +++ b/test/ruby/test_file.rb @@ -7,21 +7,23 @@ class TestFile < Test::Unit::TestCase # I don't know Ruby's spec about "unlink-before-close" exactly. # This test asserts current behaviour. def test_unlink_before_close - filename = Dir.tmpdir + '/' + File.basename(__FILE__) + ".#{$$}" - w = File.open(filename, "w") - w << "foo" - w.close - r = File.open(filename, "r") - begin - if /(mswin|bccwin|mingw|emx)/ =~ RUBY_PLATFORM - assert_raise(Errno::EACCES) {File.unlink(filename)} - else - assert_nothing_raised {File.unlink(filename)} + Dir.mktmpdir {|tmpdir| + filename = tmpdir + '/' + File.basename(__FILE__) + ".#{$$}" + w = File.open(filename, "w") + w << "foo" + w.close + r = File.open(filename, "r") + begin + if /(mswin|bccwin|mingw|emx)/ =~ RUBY_PLATFORM + assert_raise(Errno::EACCES) {File.unlink(filename)} + else + assert_nothing_raised {File.unlink(filename)} + end + ensure + r.close + File.unlink(filename) if File.exist?(filename) end - ensure - r.close - File.unlink(filename) if File.exist?(filename) - end + } end include TestEOF -- cgit