From ba4eda3ebe49cddaea1895d9d3684cef5b705c18 Mon Sep 17 00:00:00 2001 From: Go MAEDA Date: Fri, 7 May 2021 04:50:06 +0000 Subject: Merged r20990 from trunk to 4.1-stable (#35201). git-svn-id: http://svn.redmine.org/redmine/branches/4.1-stable@20992 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/query.rb | 2 +- test/unit/query_test.rb | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/app/models/query.rb b/app/models/query.rb index 152b11cf1..9d5a5c78d 100644 --- a/app/models/query.rb +++ b/app/models/query.rb @@ -501,7 +501,7 @@ class Query < ActiveRecord::Base if has_filter?(field) || !filter.remote options[:values] = filter.values if options[:values] && values_for(field) - missing = Array(values_for(field)).select(&:present?) - options[:values].map(&:last) + missing = Array(values_for(field)).select(&:present?) - options[:values].map{|v| v[1]} if missing.any? && respond_to?(method = "find_#{field}_filter_values") options[:values] += send(method, missing) end diff --git a/test/unit/query_test.rb b/test/unit/query_test.rb index d080ad846..92fb1f179 100644 --- a/test/unit/query_test.rb +++ b/test/unit/query_test.rb @@ -1451,6 +1451,19 @@ class QueryTest < ActiveSupport::TestCase end end + def test_available_filters_as_json_should_not_include_duplicate_assigned_to_id_values + set_language_if_valid 'en' + user = User.find_by_login 'dlopper' + with_current_user User.find(1) do + q = IssueQuery.new + q.filters = {"assigned_to_id" => {:operator => '=', :values => user.id.to_s}} + + filters = q.available_filters_as_json + assert_not_include [user.name, user.id.to_s], filters['assigned_to_id']['values'] + assert_include [user.name, user.id.to_s, 'active'], filters['assigned_to_id']['values'] + end + end + def test_available_filters_as_json_should_include_missing_author_id_values user = User.generate! with_current_user User.find(1) do -- cgit v1.2.3