diff options
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/finder_test.rb | 9 | ||||
-rw-r--r-- | activerecord/test/cases/relation/where_test.rb | 4 | ||||
-rw-r--r-- | activerecord/test/cases/relations_test.rb | 5 |
3 files changed, 12 insertions, 6 deletions
diff --git a/activerecord/test/cases/finder_test.rb b/activerecord/test/cases/finder_test.rb index 683e4fbd97..a9fa107749 100644 --- a/activerecord/test/cases/finder_test.rb +++ b/activerecord/test/cases/finder_test.rb @@ -808,6 +808,15 @@ class FinderTest < ActiveRecord::TestCase assert_equal [2, 1].sort, client_of.compact.sort end + def test_find_with_nil_inside_set_passed_for_attribute + client_of = Company.all.merge!( + :where => { :client_of => [nil] }, + :order => 'client_of DESC' + ).map { |x| x.client_of } + + assert_equal [], client_of.compact + end + def test_with_limiting_with_custom_select posts = Post.references(:authors).merge( :includes => :author, :select => ' posts.*, authors.id as "author_id"', diff --git a/activerecord/test/cases/relation/where_test.rb b/activerecord/test/cases/relation/where_test.rb index ccbfcc0549..8c8f4267a9 100644 --- a/activerecord/test/cases/relation/where_test.rb +++ b/activerecord/test/cases/relation/where_test.rb @@ -98,9 +98,7 @@ module ActiveRecord end def test_where_with_table_name_and_empty_array - assert_raises(ArgumentError) do - Post.where(:id => []) - end + assert_equal 0, Post.where(:id => []).count end def test_where_with_empty_hash_and_no_foreign_key diff --git a/activerecord/test/cases/relations_test.rb b/activerecord/test/cases/relations_test.rb index 981aa14e98..379c0c0758 100644 --- a/activerecord/test/cases/relations_test.rb +++ b/activerecord/test/cases/relations_test.rb @@ -515,9 +515,8 @@ class RelationTest < ActiveRecord::TestCase end def test_find_in_empty_array - assert_raises(ArgumentError) do - Author.all.where(:id => []) - end + authors = Author.all.where(:id => []) + assert authors.to_a.blank? end def test_where_with_ar_object |