From 4e58f21f798861453b08c281fae2ec3a57396ba5 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 24 Jul 2015 07:35:38 +0000 Subject: Add tests for `File.extname` * file.c (rb_file_s_extname): [DOC] add an example. * test/ruby/test_path.rb (test_extname): add tests. [Fix GH-978] * path starts with dot ('.a.rb') * path includes dir name ('a/b/d/test.rb') * path includes dir name and dir name starts with dot ('.a/b/d/test.rb') git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 10 ++++++++++ file.c | 1 + test/ruby/test_path.rb | 3 +++ 3 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index d5fd71cb25..9a0d44d5aa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Fri Jul 24 16:35:34 2015 yui-knk + + * file.c (rb_file_s_extname): [DOC] add an example. + + * test/ruby/test_path.rb (test_extname): add tests. [Fix GH-978] + * path starts with dot ('.a.rb') + * path includes dir name ('a/b/d/test.rb') + * path includes dir name and dir name starts with dot + ('.a/b/d/test.rb') + Thu Jul 23 18:50:43 2015 Koichi Sasada * vm_core.h: constify rb_iseq_constant_body::local_table and diff --git a/file.c b/file.c index 1adbe76802..48c978ed36 100644 --- a/file.c +++ b/file.c @@ -4237,6 +4237,7 @@ ruby_enc_find_extname(const char *name, long *len, rb_encoding *enc) * * File.extname("test.rb") #=> ".rb" * File.extname("a/b/d/test.rb") #=> ".rb" + * File.extname(".a/b/d/test.rb") #=> ".rb" * File.extname("foo.") #=> "" * File.extname("test") #=> "" * File.extname(".profile") #=> "" diff --git a/test/ruby/test_path.rb b/test/ruby/test_path.rb index 2db7be0b76..b604a763f1 100644 --- a/test/ruby/test_path.rb +++ b/test/ruby/test_path.rb @@ -230,6 +230,9 @@ class TestPath < Test::Unit::TestCase assert_equal('', File.extname('a')) ext = '.rb' assert_equal(ext, File.extname('a.rb')) + assert_equal(ext, File.extname('.a.rb')) + assert_equal(ext, File.extname('a/b/d/test.rb')) + assert_equal(ext, File.extname('.a/b/d/test.rb')) unless /mswin|bccwin|mingw/ =~ RUBY_PLATFORM # trailing spaces and dots are ignored on NTFS. ext = '' -- cgit v1.2.3