diff options
author | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-23 00:03:42 +0000 |
---|---|---|
committer | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-09-23 00:03:42 +0000 |
commit | f398d750ea3450762c0ba10c5dea4522d4676360 (patch) | |
tree | 9ab10a31bcca7374615f35c67f6418a3d4617855 | |
parent | 1c9b4b8c748d7ba8b84f2ac2c123b36c2f6ec55c (diff) | |
download | ruby-f398d750ea3450762c0ba10c5dea4522d4676360.tar.gz |
* lib/pathname.rb (each_filename): return Enumerator if no block
given.
* test/pathname/test_pathname.rb: add a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | lib/pathname.rb | 1 | ||||
-rw-r--r-- | test/pathname/test_pathname.rb | 1 |
3 files changed, 9 insertions, 0 deletions
@@ -1,3 +1,10 @@ +Tue Sep 23 09:01:15 2008 Yusuke Endoh <mame@tsg.ne.jp> + + * lib/pathname.rb (each_filename): return Enumerator if no block + given. + + * test/pathname/test_pathname.rb: add a test for above. + Tue Sep 23 08:25:56 2008 Yukihiro Matsumoto <matz@ruby-lang.org> * hash.c (env_aset): allow nil value to remove an entry. diff --git a/lib/pathname.rb b/lib/pathname.rb index 45974545a6..1bc0063bb0 100644 --- a/lib/pathname.rb +++ b/lib/pathname.rb @@ -517,6 +517,7 @@ class Pathname # # yields "usr", "bin", and "ruby". # def each_filename # :yield: filename + return to_enum(__method__) unless block_given? prefix, names = split_names(@path) names.each {|filename| yield filename } nil diff --git a/test/pathname/test_pathname.rb b/test/pathname/test_pathname.rb index 11c1bb7b2b..da12383bdd 100644 --- a/test/pathname/test_pathname.rb +++ b/test/pathname/test_pathname.rb @@ -481,6 +481,7 @@ class TestPathname < Test::Unit::TestCase result = [] Pathname.new("/usr/bin/ruby").each_filename {|f| result << f } assert_equal(%w[usr bin ruby], result) + assert_equal(%w[usr bin ruby], Pathname.new("/usr/bin/ruby").each_filename.to_a) end def test_kernel_pathname |