diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-01-03 12:28:50 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-01-03 12:28:50 +0000 |
commit | d82159bcf544bb66e301599ae0cada1ce73f2335 (patch) | |
tree | c15e3ebbcdd217b94ec4f668e69ceb041990154e /test/unit/query_test.rb | |
parent | 049eaeb776b51710a1a2efe061a0850626445938 (diff) | |
download | redmine-d82159bcf544bb66e301599ae0cada1ce73f2335.tar.gz redmine-d82159bcf544bb66e301599ae0cada1ce73f2335.zip |
Use joins instead of sub-queries in group by/sort by when using custom fields (#12713).
Sub-queries in group by are not supported by SQLServer.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11102 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/unit/query_test.rb')
-rw-r--r-- | test/unit/query_test.rb | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/test/unit/query_test.rb b/test/unit/query_test.rb index 3b92ea4dd..693399362 100644 --- a/test/unit/query_test.rb +++ b/test/unit/query_test.rb @@ -877,9 +877,7 @@ class QueryTest < ActiveSupport::TestCase c = q.available_columns.find {|col| col.is_a?(QueryCustomFieldColumn) && col.custom_field.field_format == 'string' } assert c assert c.sortable - issues = Issue.includes([:assigned_to, :status, :tracker, :project, :priority]).where( - q.statement - ).order("#{c.sortable} ASC").all + issues = q.issues(:order => "#{c.sortable} ASC") values = issues.collect {|i| i.custom_value_for(c.custom_field).to_s} assert !values.empty? assert_equal values.sort, values @@ -890,9 +888,7 @@ class QueryTest < ActiveSupport::TestCase c = q.available_columns.find {|col| col.is_a?(QueryCustomFieldColumn) && col.custom_field.field_format == 'string' } assert c assert c.sortable - issues = Issue.includes([:assigned_to, :status, :tracker, :project, :priority]).where( - q.statement - ).order("#{c.sortable} DESC").all + issues = q.issues(:order => "#{c.sortable} DESC") values = issues.collect {|i| i.custom_value_for(c.custom_field).to_s} assert !values.empty? assert_equal values.sort.reverse, values @@ -903,9 +899,7 @@ class QueryTest < ActiveSupport::TestCase c = q.available_columns.find {|col| col.is_a?(QueryCustomFieldColumn) && col.custom_field.field_format == 'float' } assert c assert c.sortable - issues = Issue.includes([:assigned_to, :status, :tracker, :project, :priority]).where( - q.statement - ).order("#{c.sortable} ASC").all + issues = q.issues(:order => "#{c.sortable} ASC") values = issues.collect {|i| begin; Kernel.Float(i.custom_value_for(c.custom_field).to_s); rescue; nil; end}.compact assert !values.empty? assert_equal values.sort, values |