mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Add a frozenness check test for Enumerator::Lazy#initialize.
* test/ruby/test_lazy_enumerator.rb (TestLazyEnumerator#test_initialize): Make sure Enumerator::Lazy#initialize raises error if the object is frozen. The check was performed by rb_ivar_set() before rb_check_frozen() was added to enumerator_init(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
f2f18dab7c
commit
952e444877
2 changed files with 14 additions and 0 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
Mon Jul 29 21:15:30 2013 Akinori MUSHA <knu@iDaemons.org>
|
||||||
|
|
||||||
|
* test/ruby/test_lazy_enumerator.rb
|
||||||
|
(TestLazyEnumerator#test_initialize): Make sure
|
||||||
|
Enumerator::Lazy#initialize raises error if the object is
|
||||||
|
frozen. The check was performed by rb_ivar_set() before
|
||||||
|
rb_check_frozen() was added to enumerator_init().
|
||||||
|
|
||||||
Mon Jul 29 21:06:42 2013 Akinori MUSHA <knu@iDaemons.org>
|
Mon Jul 29 21:06:42 2013 Akinori MUSHA <knu@iDaemons.org>
|
||||||
|
|
||||||
* enumerator.c (enumerator_init): Add a frozenness check to
|
* enumerator.c (enumerator_init): Add a frozenness check to
|
||||||
|
|
|
@ -22,6 +22,12 @@ class TestLazyEnumerator < Test::Unit::TestCase
|
||||||
assert_equal([1, 2, 3], [1, 2, 3].lazy.to_a)
|
assert_equal([1, 2, 3], [1, 2, 3].lazy.to_a)
|
||||||
assert_equal([1, 2, 3], Enumerator::Lazy.new([1, 2, 3]){|y, v| y << v}.to_a)
|
assert_equal([1, 2, 3], Enumerator::Lazy.new([1, 2, 3]){|y, v| y << v}.to_a)
|
||||||
assert_raise(ArgumentError) { Enumerator::Lazy.new([1, 2, 3]) }
|
assert_raise(ArgumentError) { Enumerator::Lazy.new([1, 2, 3]) }
|
||||||
|
|
||||||
|
a = [1, 2, 3].lazy
|
||||||
|
a.freeze
|
||||||
|
assert_raise(RuntimeError) {
|
||||||
|
a.__send__ :initialize, [4, 5], &->(y, *v) { y << yield(*v) }
|
||||||
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_each_args
|
def test_each_args
|
||||||
|
|
Loading…
Add table
Reference in a new issue