aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/batches_test.rb
diff options
context:
space:
mode:
authorMarc-Andre Lafortune <github@marc-andre.ca>2013-12-05 12:20:03 -0500
committerMarc-Andre Lafortune <github@marc-andre.ca>2013-12-06 08:53:14 -0500
commit0aad463cfbe9853fd3a7ab0f8e4e0a34715fd62c (patch)
tree8bce8bc45b85355d01657e67d1152f6f41fbb971 /activerecord/test/cases/batches_test.rb
parent5086c8c2113b67eb893cb34882e06c8b83e7951c (diff)
downloadrails-0aad463cfbe9853fd3a7ab0f8e4e0a34715fd62c.tar.gz
rails-0aad463cfbe9853fd3a7ab0f8e4e0a34715fd62c.tar.bz2
rails-0aad463cfbe9853fd3a7ab0f8e4e0a34715fd62c.zip
`find_in_batches` now returns an `Enumerator` when called without a block, so that it
can be chained with other `Enumerable` methods.
Diffstat (limited to 'activerecord/test/cases/batches_test.rb')
-rw-r--r--activerecord/test/cases/batches_test.rb13
1 files changed, 13 insertions, 0 deletions
diff --git a/activerecord/test/cases/batches_test.rb b/activerecord/test/cases/batches_test.rb
index 38c2560d69..3b94d46710 100644
--- a/activerecord/test/cases/batches_test.rb
+++ b/activerecord/test/cases/batches_test.rb
@@ -170,4 +170,17 @@ class EachTest < ActiveRecord::TestCase
end
end
end
+
+ def test_find_in_batches_should_return_an_enumerator
+ enum = nil
+ assert_queries(0) do
+ enum = Post.find_in_batches(:batch_size => 1)
+ end
+ assert_queries(4) do
+ enum.first(4) do |batch|
+ assert_kind_of Array, batch
+ assert_kind_of Post, batch.first
+ end
+ end
+ end
end