]> source.dussan.org Git - redmine.git/commitdiff
Add support for grouping by issue on timelog view (#32436).
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 10 Nov 2019 07:56:47 +0000 (07:56 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 10 Nov 2019 07:56:47 +0000 (07:56 +0000)
Patch by Kouhei Sutou.

git-svn-id: http://svn.redmine.org/redmine/trunk@19063 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/models/time_entry_query.rb
test/functional/timelog_controller_test.rb

index a51601620a7c7336c10b40d6941b31696dea8bd8..99d4f667adfbc9df2abd91b1d5654915c7bf65a3 100644 (file)
@@ -30,7 +30,7 @@ class TimeEntryQuery < Query
     QueryColumn.new(:author, :sortable => lambda {User.fields_for_order_statement}),
     QueryColumn.new(:user, :sortable => lambda {User.fields_for_order_statement}, :groupable => true),
     QueryColumn.new(:activity, :sortable => "#{TimeEntryActivity.table_name}.position", :groupable => true),
-    QueryColumn.new(:issue, :sortable => "#{Issue.table_name}.id"),
+    QueryColumn.new(:issue, :sortable => "#{Issue.table_name}.id", :groupable => true),
     QueryAssociationColumn.new(:issue, :tracker, :caption => :field_tracker, :sortable => "#{Tracker.table_name}.position"),
     QueryAssociationColumn.new(:issue, :status, :caption => :field_status, :sortable => "#{IssueStatus.table_name}.position"),
     QueryAssociationColumn.new(:issue, :category, :caption => :field_category, :sortable => "#{IssueCategory.table_name}.name"),
index f23a10c10fedc3c3e0ea57d2e97eb0d9afaf93b4..9c0b958b990f19392a7a82abb908c37e21407eb8 100644 (file)
@@ -1418,4 +1418,18 @@ class TimelogControllerTest < Redmine::ControllerTest
       assert_select '+ span.count', :text => '2'
     end
   end
+
+  def test_index_grouped_by_issue
+    get :index, :params => {
+        :set_filter => 1,
+        :group_by => 'issue'
+      }
+    assert_response :success
+
+    assert_select 'tr.group span.name' do |elements|
+      target_element = elements[1]
+      assert_equal "Bug #1: Cannot print recipes", target_element.text
+      assert_select target_element, '+ span.count', :text => '2'
+    end
+  end
 end