]> source.dussan.org Git - redmine.git/commitdiff
Merged r13055 (#16519).
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Thu, 26 Jun 2014 19:35:53 +0000 (19:35 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Thu, 26 Jun 2014 19:35:53 +0000 (19:35 +0000)
git-svn-id: http://svn.redmine.org/redmine/branches/2.5-stable@13193 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/helpers/time_report.rb
test/functional/time_entry_reports_controller_test.rb

index 14a09694e2426cd53ed75f03a8adddfc44639bd2..bda6454eb8a01e056a6d9cc98f76618836d9cfaf 100644 (file)
@@ -137,7 +137,7 @@ module Redmine
         custom_fields += TimeEntryActivityCustomField.all
 
         # Add list and boolean custom fields as available criteria
-        custom_fields.select {|cf| %w(list bool).include? cf.field_format }.each do |cf|
+        custom_fields.select {|cf| %w(list bool).include?(cf.field_format) && !cf.multiple?}.each do |cf|
           @available_criteria["cf_#{cf.id}"] = {:sql => cf.group_statement,
                                                  :joins => cf.join_for_order_statement,
                                                  :format => cf.field_format,
index b89b31e9dd18a8a168be65985ab85b71ce64f387..56e23f935849791e352ff569d78b74cbb97962c4 100644 (file)
@@ -99,7 +99,7 @@ class TimeEntryReportsControllerTest < ActionController::TestCase
     assert_equal "162.90", "%.2f" % assigns(:report).total_hours
   end
 
-  def test_report_custom_field_criteria_with_multiple_values
+  def test_report_custom_field_criteria_with_multiple_values_on_single_value_custom_field_should_not_fail
     field = TimeEntryCustomField.create!(:name => 'multi', :field_format => 'list', :possible_values => ['value1', 'value2'])
     entry = TimeEntry.create!(:project => Project.find(1), :hours => 1, :activity_id => 10, :user => User.find(2), :spent_on => Date.today)
     CustomValue.create!(:customized => entry, :custom_field => field, :value => 'value1')
@@ -109,6 +109,18 @@ class TimeEntryReportsControllerTest < ActionController::TestCase
     assert_response :success
   end
 
+  def test_report_multiple_values_custom_fields_should_not_be_proposed
+    TimeEntryCustomField.create!(:name => 'Single', :field_format => 'list', :possible_values => ['value1', 'value2'])
+    TimeEntryCustomField.create!(:name => 'Multi', :field_format => 'list', :multiple => true, :possible_values => ['value1', 'value2'])
+
+    get :report, :project_id => 1
+    assert_response :success
+    assert_select 'select[name=?]', 'criteria[]' do
+      assert_select 'option', :text => 'Single'
+      assert_select 'option', :text => 'Multi', :count => 0
+    end
+  end
+
   def test_report_one_day
     get :report, :project_id => 1, :columns => 'day', :from => "2007-03-23", :to => "2007-03-23", :criteria => ["user", "activity"]
     assert_response :success