aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorPratik Naik <pratiknaik@gmail.com>2009-12-28 01:08:34 +0530
committerPratik Naik <pratiknaik@gmail.com>2009-12-28 01:08:34 +0530
commita8b10a2a8d6f8d861453803264b9ef1b0cadbc6b (patch)
treeacc2d2ad06e34ccf11fc886ef4774210ec85d7aa /activerecord/test/cases
parent08312e9958b84de9aef07ba157eed04750567da4 (diff)
downloadrails-a8b10a2a8d6f8d861453803264b9ef1b0cadbc6b.tar.gz
rails-a8b10a2a8d6f8d861453803264b9ef1b0cadbc6b.tar.bz2
rails-a8b10a2a8d6f8d861453803264b9ef1b0cadbc6b.zip
Add relation#merge to merge two relations
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/relations_test.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/activerecord/test/cases/relations_test.rb b/activerecord/test/cases/relations_test.rb
index 2ec8c0d3a2..c639fb978d 100644
--- a/activerecord/test/cases/relations_test.rb
+++ b/activerecord/test/cases/relations_test.rb
@@ -328,4 +328,12 @@ class RelationTest < ActiveRecord::TestCase
assert davids.loaded?
end
+ def test_relation_merging
+ devs = Developer.where("salary >= 80000") & Developer.limit(2) & Developer.order('id ASC').where("id < 3")
+ assert_equal [developers(:david), developers(:jamis)], devs.to_a
+
+ dev_with_count = Developer.limit(1) & Developer.order('id DESC') & Developer.select('developers.*, count(id) id_count').group('id')
+ assert_equal [developers(:poor_jamis)], dev_with_count.to_a
+ assert_equal 1, dev_with_count.first.id_count.to_i
+ end
end