summaryrefslogtreecommitdiffstats
path: root/test/unit
diff options
context:
space:
mode:
authorGo MAEDA <maeda@farend.jp>2018-10-04 12:46:32 +0000
committerGo MAEDA <maeda@farend.jp>2018-10-04 12:46:32 +0000
commit28c231473f98a4b184204dd53cbeee1e0d655853 (patch)
treeaecf6718ddbcef587a0fad04baf755fb4627f748 /test/unit
parentf199fd54b7bf404aa9d75134a55b6b4275a75ef1 (diff)
downloadredmine-28c231473f98a4b184204dd53cbeee1e0d655853.tar.gz
redmine-28c231473f98a4b184204dd53cbeee1e0d655853.zip
Custom queries are broken by updating with nil parameter values (#29701).
Patch by Mizuki ISHIKAWA. git-svn-id: http://svn.redmine.org/redmine/trunk@17566 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'test/unit')
-rw-r--r--test/unit/query_test.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/unit/query_test.rb b/test/unit/query_test.rb
index 924a8f4f3..8c530caeb 100644
--- a/test/unit/query_test.rb
+++ b/test/unit/query_test.rb
@@ -1873,6 +1873,21 @@ class QueryTest < ActiveSupport::TestCase
assert_nil IssueQuery.visible(User.find(1)).find_by_id(q.id)
end
+ def test_build_from_params_should_not_update_query_with_nil_param_values
+ q = IssueQuery.create!(:name => 'Query',
+ :type => "IssueQuery",
+ :user => User.find(7),
+ :filters => {"status_id" => {:values => ["1"], :operator => "o"}},
+ :column_names => [:tracker, :status],
+ :sort_criteria => ['id', 'asc'],
+ :group_by => "project",
+ :options => { :totalable_names=>[:estimated_hours], :draw_relations => '1', :draw_progress_line => '1' }
+ )
+ old_attributes = q.attributes
+ q.build_from_params({})
+ assert_equal old_attributes, q.attributes
+ end
+
test "#available_filters should include users of visible projects in cross-project view" do
users = IssueQuery.new.available_filters["assigned_to_id"]
assert_not_nil users