Skip to content

Commit d9798a9

Browse files
committed
test each/each_hash return Enumerator w/o block, return self w/ block
1 parent b2d6544 commit d9798a9

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

test/test_integration_resultset.rb

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,17 +113,35 @@ def test_next_results_as_hash
113113
def test_each
114114
called = 0
115115
@result.reset(1, 2)
116-
@result.each { |row| called += 1 }
116+
result = @result.each { |row| called += 1 }
117+
result.reset # reset just to confirm we can chain the method after each
118+
assert_equal @result, result
117119
assert_equal 2, called
118120
end
119121

120122
def test_each_enum
123+
@result.reset(1, 2)
124+
enum = @result.each
125+
assert_instance_of Enumerator, enum
126+
assert_equal 2, enum.to_a.length
127+
end
128+
129+
def test_each_hash
121130
called = 0
122131
@result.reset(1, 2)
123-
@result.each.to_a.each { |row| called += 1 }
132+
result = @result.each_hash { |row| called += 1 }
133+
result.reset
134+
assert_equal @result, result
124135
assert_equal 2, called
125136
end
126137

138+
def test_each_hash_enum
139+
@result.reset(1, 2)
140+
enum = @result.each_hash
141+
assert_instance_of Enumerator, enum
142+
assert_equal 2, enum.to_a.length
143+
end
144+
127145
def test_enumerable
128146
@result.reset(1, 2)
129147
assert_equal 2, @result.to_a.length

0 commit comments

Comments
 (0)