Why did the behaviour of File.basename, File.dirname and File.split
change in ruby 1.8.0?
The tests below run on 1.6.8( and 1.7.x, I think), but not on 1.8.0.
Is this intentional and what the rationale?
Cheers,
Thomas
require ‘test/unit’
class BaseFileTest < Test::Unit::TestCase
def test_dirname
assert_equal(“a/b/c”, File.dirname(“a/b/c/d”))
assert_equal(".", File.dirname(“c”))
assert_equal(“a/b”, File.dirname(“a/b/”))
end
def test_basename
assert_equal(“d”, File.basename(“a/b/c/d”))
assert_equal(“c”, File.basename(“c”))
assert_equal("", File.basename(“a/b/”))
end
def test_split
assert_equal([“a/b/c”, “d”], File.split(“a/b/c/d”))
assert_equal([“a/b/c/d”, “”], File.split(“a/b/c/d/”))
assert_equal([".", “a”], File.split(“a”))
end
end