From 610eeffa468f43c13fd374c53b5ed5cb5dd9c1b3 Mon Sep 17 00:00:00 2001 From: marcandre Date: Tue, 6 Nov 2012 17:10:06 +0000 Subject: * enumerator: New method #size; constructor accepts size [Feature #6636] * include/ruby/intern.h: RETURN_SIZED_ENUMERATOR for support of sized enumerators git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_enumerator.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'test/ruby/test_enumerator.rb') diff --git a/test/ruby/test_enumerator.rb b/test/ruby/test_enumerator.rb index 6b8a09f80f..0f19a4f8e7 100644 --- a/test/ruby/test_enumerator.rb +++ b/test/ruby/test_enumerator.rb @@ -401,5 +401,15 @@ class TestEnumerator < Test::Unit::TestCase assert_raise(LocalJumpError) { Enumerator::Yielder.new } end + + def test_size + assert_equal nil, Enumerator.new{}.size + assert_equal 42, Enumerator.new(->{42}){}.size + assert_equal 42, Enumerator.new(42){}.size + assert_equal 1 << 70, Enumerator.new(1 << 70){}.size + assert_equal Float::INFINITY, Enumerator.new(Float::INFINITY){}.size + assert_equal nil, Enumerator.new(nil){}.size + assert_raise(TypeError) { Enumerator.new("42"){} } + end end -- cgit v1.2.3