aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/calculations_test.rb
diff options
context:
space:
mode:
authorstopdropandrew <andrew@andrew.local>2009-03-07 15:26:56 +0000
committerPratik Naik <pratiknaik@gmail.com>2009-03-07 15:26:56 +0000
commit6543426c73fa9ccf3649d7cbacbbb0fda9b6a099 (patch)
treecaadecdf1536a94b49312d5f3b24bd7b0a135529 /activerecord/test/cases/calculations_test.rb
parentccb0a92fa2ba0bf7be50033090c3a861e6d907be (diff)
downloadrails-6543426c73fa9ccf3649d7cbacbbb0fda9b6a099.tar.gz
rails-6543426c73fa9ccf3649d7cbacbbb0fda9b6a099.tar.bz2
rails-6543426c73fa9ccf3649d7cbacbbb0fda9b6a099.zip
Ensure calculations respect scoped :select [#1334 state:resolved]
Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
Diffstat (limited to 'activerecord/test/cases/calculations_test.rb')
-rw-r--r--activerecord/test/cases/calculations_test.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/activerecord/test/cases/calculations_test.rb b/activerecord/test/cases/calculations_test.rb
index c158706645..0257fe57cb 100644
--- a/activerecord/test/cases/calculations_test.rb
+++ b/activerecord/test/cases/calculations_test.rb
@@ -264,6 +264,17 @@ class CalculationsTest < ActiveRecord::TestCase
assert_equal 4, Account.count(:distinct => true, :include => :firm, :select => :credit_limit)
end
+ def test_should_count_scoped_select
+ Account.update_all("credit_limit = 50")
+ assert_equal 1, Account.scoped(:select => "DISTINCT credit_limit").count
+ end
+
+ def test_should_count_scoped_select_with_options
+ Account.update_all("credit_limit = 50")
+ Account.first.update_attribute('credit_limit', 49)
+ assert_equal 1, Account.scoped(:select => "DISTINCT credit_limit").count(:conditions => [ 'credit_limit >= 50'] )
+ end
+
def test_should_count_manual_select_with_include
assert_equal 6, Account.count(:select => "DISTINCT accounts.id", :include => :firm)
end