From eaefe87c5ed33b9581906a4848163a6c32a1ee24 Mon Sep 17 00:00:00 2001 From: Miguel Grazziotin Date: Fri, 7 Aug 2015 17:11:10 -0300 Subject: Adding a new test using chained where, limit and find([pks]) --- activerecord/test/cases/finder_test.rb | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'activerecord') diff --git a/activerecord/test/cases/finder_test.rb b/activerecord/test/cases/finder_test.rb index 526623ec36..47059fe9e4 100644 --- a/activerecord/test/cases/finder_test.rb +++ b/activerecord/test/cases/finder_test.rb @@ -99,7 +99,17 @@ class FinderTest < ActiveRecord::TestCase assert_equal 'The Fifth Topic of the day', records[2].title end - def test_find_with_ids_and_offset + def test_find_with_ids_where_and_limit + # Please note that Topic 1 is the only not approved so + # if it were among the first 3 it would raise a ActiveRecord::RecordNotFound + records = Topic.where(approved: true).limit(3).find([3,2,5,1,4]) + assert_equal 3, records.size + assert_equal 'The Third Topic of the day', records[0].title + assert_equal 'The Second Topic of the day', records[1].title + assert_equal 'The Fifth Topic of the day', records[2].title + end + + def test_find_with_ids_and_offset # failing with offset records = Topic.offset(2).find([3,2,5,1,4]) assert_equal 3, records.size assert_equal 'The Fifth Topic of the day', records[0].title @@ -251,7 +261,7 @@ class FinderTest < ActiveRecord::TestCase assert_equal topics(:second).title, Topic.find([2]).first.title end - def test_find_by_ids_with_limit_and_offset + def test_find_by_ids_with_limit_and_offset # failing with offset assert_equal 2, Entrant.limit(2).find([1,3,2]).size entrants = Entrant.limit(3).offset(2).find([1,3,2]) assert_equal 1, entrants.size -- cgit v1.2.3