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

* enumerator.c (lazy_zip): add Enumerable::Lazy#flat_map.

* enumerator.c (lazy_lazy): just returns self.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shugo 2012-03-13 23:08:15 +00:00
parent f24d9fcd75
commit 22434473c7
3 changed files with 87 additions and 0 deletions

View file

@ -109,4 +109,26 @@ class TestLazyEnumerator < Test::Unit::TestCase
assert_equal('c', a.lazy.grep(/c/).first)
assert_equal('c', a.current)
end
def test_zip
a = Step.new(1..3)
assert_equal([1, "a"], a.zip("a".."c").first)
assert_equal(3, a.current)
assert_equal([1, "a"], a.lazy.zip("a".."c").first)
assert_equal(1, a.current)
end
def test_zip_without_arg
a = Step.new(1..3)
assert_equal([1], a.zip.first)
assert_equal(3, a.current)
assert_equal([1], a.lazy.zip.first)
assert_equal(1, a.current)
end
def test_zip_with_block
a = Step.new(1..3)
assert_equal(["a", 1], a.lazy.zip("a".."c") {|x, y| [y, x]}.first)
assert_equal(1, a.current)
end
end