From 22361a3d1ce3a9bcc1c52237f93ec30f19e89860 Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 15 May 2008 06:34:02 +0000 Subject: * file.c (file_expand_path): support for alternative data stream and ignored trailing garbages of NTFS. * file.c (rb_file_s_basename): ditto. * file.c (rb_file_s_extname): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_file_exhaustive.rb | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'test') diff --git a/test/ruby/test_file_exhaustive.rb b/test/ruby/test_file_exhaustive.rb index 7f579cee43..be28fc6dd9 100644 --- a/test/ruby/test_file_exhaustive.rb +++ b/test/ruby/test_file_exhaustive.rb @@ -374,6 +374,11 @@ class TestFileExhaustive < Test::Unit::TestCase def test_expand_path assert_equal(@file, File.expand_path(File.basename(@file), File.dirname(@file))) + if /cygwin|mingw|mswin|bccwin/ =~ RUBY_PLATFORM + assert_equal(@file, File.expand_path(@file + " ")) + assert_equal(@file, File.expand_path(@file + ".")) + assert_equal(@file, File.expand_path(@file + "::$DATA")) + end end def test_basename @@ -383,6 +388,19 @@ class TestFileExhaustive < Test::Unit::TestCase assert_equal("foo", File.basename("foo", ".ext")) assert_equal("foo", File.basename("foo.ext", ".ext")) assert_equal("foo", File.basename("foo.ext", ".*")) + if /cygwin|mingw|mswin|bccwin/ =~ RUBY_PLATFORM + basename = File.basename(@file) + assert_equal(basename, File.basename(@file + " ")) + assert_equal(basename, File.basename(@file + ".")) + assert_equal(basename, File.basename(@file + "::$DATA")) + basename.chomp!(".test") + assert_equal(basename, File.basename(@file + " ", ".test")) + assert_equal(basename, File.basename(@file + ".", ".test")) + assert_equal(basename, File.basename(@file + "::$DATA", ".test")) + assert_equal(basename, File.basename(@file + " ", ".*")) + assert_equal(basename, File.basename(@file + ".", ".*")) + assert_equal(basename, File.basename(@file + "::$DATA", ".*")) + end end def test_dirname @@ -394,6 +412,13 @@ class TestFileExhaustive < Test::Unit::TestCase assert(".test", File.extname(@file)) assert_equal("", File.extname("foo")) assert_equal("", File.extname("")) + if /cygwin|mingw|mswin|bccwin/ =~ RUBY_PLATFORM + assert_equal("", File.extname("foo ")) + assert_equal(".ext", File.extname("foo.ext ")) + assert_equal(".ext", File.extname("foo.ext.")) + assert_equal(".ext", File.extname("foo.ext::$DATA")) + assert_equal("", File.extname("foo::$DATA.ext")) + end end def test_split -- cgit v1.2.3