diff options
author | Juanjo Bazán <jjbazan@gmail.com> | 2012-01-30 21:36:47 +0100 |
---|---|---|
committer | Juanjo Bazán <jjbazan@gmail.com> | 2012-01-31 19:50:09 +0100 |
commit | 8270e4a8ce8337fca98030953922e5992b06a3dd (patch) | |
tree | b7a1c68c6fe36a18c88e92363f648b609091ee5f /activerecord/test | |
parent | bb842e8d2111e50b21a14b8bd6d89371a4b9cd68 (diff) | |
download | rails-8270e4a8ce8337fca98030953922e5992b06a3dd.tar.gz rails-8270e4a8ce8337fca98030953922e5992b06a3dd.tar.bz2 rails-8270e4a8ce8337fca98030953922e5992b06a3dd.zip |
Added `none` query method to return zero records.
And added NullRelation class implementing the null object pattern for the `Relation` class.
Diffstat (limited to 'activerecord/test')
-rw-r--r-- | activerecord/test/cases/relations_test.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/activerecord/test/cases/relations_test.rb b/activerecord/test/cases/relations_test.rb index 5e19465253..0471d03f3b 100644 --- a/activerecord/test/cases/relations_test.rb +++ b/activerecord/test/cases/relations_test.rb @@ -215,6 +215,19 @@ class RelationTest < ActiveRecord::TestCase assert_equal [2, 4, 6, 8, 10], even_ids.sort end + def test_none + assert_no_queries do + assert_equal [], Developer.none + assert_equal [], Developer.scoped.none + end + end + + def test_none_chainable + assert_no_queries do + assert_equal [], Developer.none.where(:name => 'David') + end + end + def test_joins_with_nil_argument assert_nothing_raised { DependentFirm.joins(nil).first } end |