diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-01-03 13:33:16 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-01-03 13:33:16 +0000 |
commit | 77f6b404fac599a01511e8d96002af001b0042f5 (patch) | |
tree | dc42a6a4483b03378be52b1354ff9400bda55bf2 /test/unit | |
parent | d82159bcf544bb66e301599ae0cada1ce73f2335 (diff) | |
download | redmine-77f6b404fac599a01511e8d96002af001b0042f5.tar.gz redmine-77f6b404fac599a01511e8d96002af001b0042f5.zip |
Make sure we don't cast an empty string to numeric (#12713).
SQLServer evaluates the CAST condition even if the <> '' condition is false.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11103 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/unit')
-rw-r--r-- | test/unit/query_test.rb | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/test/unit/query_test.rb b/test/unit/query_test.rb index 693399362..776241870 100644 --- a/test/unit/query_test.rb +++ b/test/unit/query_test.rb @@ -328,7 +328,7 @@ class QueryTest < ActiveSupport::TestCase f = IssueCustomField.create!(:name => 'filter', :field_format => 'int', :is_filter => true, :is_for_all => true) query = IssueQuery.new(:project => Project.find(1), :name => '_') query.add_filter("cf_#{f.id}", '<=', ['30']) - assert query.statement.include?("CAST(custom_values.value AS decimal(30,3)) <= 30.0") + assert_match /CAST.+ <= 30\.0/, query.statement find_issues_with_query(query) end @@ -343,7 +343,7 @@ class QueryTest < ActiveSupport::TestCase f = IssueCustomField.create!(:name => 'filter', :field_format => 'int', :is_filter => true, :is_for_all => true) query = IssueQuery.new(:project => Project.find(1), :name => '_') query.add_filter("cf_#{f.id}", '><', ['30', '40']) - assert_include "CAST(custom_values.value AS decimal(30,3)) BETWEEN 30.0 AND 40.0", query.statement + assert_match /CAST.+ BETWEEN 30.0 AND 40.0/, query.statement find_issues_with_query(query) end |