1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

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
This commit is contained in:
nobu 2015-07-24 07:35:38 +00:00
parent a34343b3a3
commit 4e58f21f79
3 changed files with 14 additions and 0 deletions

View file

@ -1,3 +1,13 @@
Fri Jul 24 16:35:34 2015 yui-knk <spiketeika@gmail.com>
* 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 <ko1@atdot.net>
* vm_core.h: constify rb_iseq_constant_body::local_table and

1
file.c
View file

@ -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") #=> ""

View file

@ -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 = ''