diff options
Diffstat (limited to 'mrbgems/mruby-enum-ext/test/enum.rb')
| -rw-r--r-- | mrbgems/mruby-enum-ext/test/enum.rb | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/mrbgems/mruby-enum-ext/test/enum.rb b/mrbgems/mruby-enum-ext/test/enum.rb index 9523b497e..ba0851582 100644 --- a/mrbgems/mruby-enum-ext/test/enum.rb +++ b/mrbgems/mruby-enum-ext/test/enum.rb @@ -47,11 +47,21 @@ assert("Enumerable#sort_by") do end assert("Enumerable#first") do - a = [1, 2, 3] + a = Object.new + a.extend Enumerable + def a.each + yield 1 + yield 2 + yield 3 + end assert_equal 1, a.first assert_equal [1, 2], a.first(2) assert_equal [1, 2, 3], a.first(10) - assert_nil [].first + a = Object.new + a.extend Enumerable + def a.each + end + assert_nil a.first end assert("Enumerable#count") do @@ -66,3 +76,11 @@ assert("Enumerable#flat_map") do assert_equal [1, -1, 2, -2, 3, -3, 4, -4], [1, 2, 3, 4].flat_map { |e| [e, -e] } assert_equal [1, 2, 100, 3, 4, 100], [[1, 2], [3, 4]].flat_map { |e| e + [100] } end + +assert("Enumerable#max_by") do + assert_equal "albatross", %w[albatross dog horse].max_by { |x| x.length } +end + +assert("Enumerable#min_by") do + assert_equal "dog", %w[albatross dog horse].min_by { |x| x.length } +end |
