summaryrefslogtreecommitdiff
path: root/test/ruby/test_file.rb
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2019-11-12 18:02:28 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2019-11-12 18:04:20 +0900
commit3bf8ffad714efa98949e25095f1c5e2844318958 (patch)
treeb37d65d267a579d5dc1c3bdc21805ebc97a1de4f /test/ruby/test_file.rb
parent0f2837847d5bfb65d20a89d196393212635fbe9e (diff)
Added assertions for realpath and realdirpath
It is said that realpath(3) and realdirpath(3) on some platforms may return a relative path.
Diffstat (limited to 'test/ruby/test_file.rb')
-rw-r--r--test/ruby/test_file.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/test/ruby/test_file.rb b/test/ruby/test_file.rb
index f0a8d67a5d..f984a8fd23 100644
--- a/test/ruby/test_file.rb
+++ b/test/ruby/test_file.rb
@@ -252,6 +252,10 @@ class TestFile < Test::Unit::TestCase
tst = realdir + (File::SEPARATOR*3 + ".")
assert_equal(realdir, File.realpath(tst))
assert_equal(realdir, File.realpath(".", tst))
+ assert_equal(realdir, Dir.chdir(realdir) {File.realpath(".")})
+ realpath = File.join(realdir, "test")
+ File.write(realpath, "")
+ assert_equal(realpath, Dir.chdir(realdir) {File.realpath("test")})
if File::ALT_SEPARATOR
bug2961 = '[ruby-core:28653]'
assert_equal(realdir, File.realpath(realdir.tr(File::SEPARATOR, File::ALT_SEPARATOR)), bug2961)
@@ -318,6 +322,8 @@ class TestFile < Test::Unit::TestCase
assert_equal(realdir, File.realdirpath(tst))
assert_equal(realdir, File.realdirpath(".", tst))
assert_equal(File.join(realdir, "foo"), File.realdirpath("foo", tst))
+ assert_equal(realdir, Dir.chdir(realdir) {File.realdirpath(".")})
+ assert_equal(File.join(realdir, "foo"), Dir.chdir(realdir) {File.realdirpath("foo")})
}
begin
result = File.realdirpath("bar", "//:/foo")