mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* test/ruby/test_file.rb: new file. only asserts unlink-before-close behaviour
now. * test/soap/marshal/test_digraph.rb: should close before unlink. unlink-before-close pattern is not needed here. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
2e0b087b02
commit
11150ba747
3 changed files with 41 additions and 1 deletions
32
test/ruby/test_file.rb
Normal file
32
test/ruby/test_file.rb
Normal file
|
@ -0,0 +1,32 @@
|
|||
require 'test/unit'
|
||||
|
||||
$KCODE = 'none'
|
||||
|
||||
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 = File.basename(__FILE__) + ".#{$$}"
|
||||
w = File.open(filename, "w")
|
||||
w << "foo"
|
||||
w.close
|
||||
r = File.open(filename, "r")
|
||||
begin
|
||||
if /(mswin|bccwin|mingw)/ =~ RUBY_PLATFORM
|
||||
begin
|
||||
File.unlink(filename)
|
||||
assert(false)
|
||||
rescue Errno::EACCES
|
||||
assert(true)
|
||||
end
|
||||
else
|
||||
File.unlink(filename)
|
||||
assert(true)
|
||||
end
|
||||
ensure
|
||||
r.close
|
||||
File.unlink(filename) if File.exist?(filename)
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue