summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2019-11-10 07:56:47 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2019-11-10 07:56:47 +0000
commit4a447dda0988c52e3c552f1e8f08a9bd1c315a2b (patch)
tree1cf887ad2979b9611ee2559ad5928f16da01c182
parente23c480f22f48c51e0530a5a1fb75a509733699f (diff)
downloadredmine-4a447dda0988c52e3c552f1e8f08a9bd1c315a2b.tar.gz
redmine-4a447dda0988c52e3c552f1e8f08a9bd1c315a2b.zip
Add support for grouping by issue on timelog view (#32436).
Patch by Kouhei Sutou. git-svn-id: http://svn.redmine.org/redmine/trunk@19063 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r--app/models/time_entry_query.rb2
-rw-r--r--test/functional/timelog_controller_test.rb14
2 files changed, 15 insertions, 1 deletions
diff --git a/app/models/time_entry_query.rb b/app/models/time_entry_query.rb
index a51601620..99d4f667a 100644
--- a/app/models/time_entry_query.rb
+++ b/app/models/time_entry_query.rb
@@ -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"),
diff --git a/test/functional/timelog_controller_test.rb b/test/functional/timelog_controller_test.rb
index f23a10c10..9c0b958b9 100644
--- a/test/functional/timelog_controller_test.rb
+++ b/test/functional/timelog_controller_test.rb
@@ -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