mirror of
https://github.com/redmine/redmine.git
synced 2025-12-16 05:20:28 +01:00
Fix sort does not work with group by datetime columns (#33110).
Patch by Marius BALTEANU. git-svn-id: http://svn.redmine.org/redmine/trunk@19655 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -1705,6 +1705,34 @@ class QueryTest < ActiveSupport::TestCase
|
||||
assert_equal values.sort, values
|
||||
end
|
||||
|
||||
def test_sort_with_group_by_timestamp_query_column_should_sort_after_date_value
|
||||
User.current = User.find(1)
|
||||
|
||||
# Touch Issue#10 in order to be the last updated issue
|
||||
Issue.find(10).update_attribute(:updated_on, Issue.find(10).updated_on + 1)
|
||||
|
||||
q = IssueQuery.new(
|
||||
:name => '_',
|
||||
:filters => { 'updated_on' => {:operator => 't', :values => ['']} },
|
||||
:group_by => 'updated_on',
|
||||
:sort_criteria => [['subject', 'asc']]
|
||||
)
|
||||
|
||||
# The following 3 issues are updated today (ordered by updated_on):
|
||||
# Issue#10: Issue Doing the Blocking
|
||||
# Issue#9: Blocked Issue
|
||||
# Issue#6: Issue of a private subproject
|
||||
|
||||
# When we group by a timestamp query column, all the issues in the group have the same date value (today)
|
||||
# and the time of the value should not be taken into consideration when sorting
|
||||
#
|
||||
# For the same issues after subject ascending should return the following:
|
||||
# Issue#9: Blocked Issue
|
||||
# Issue#10: Issue Doing the Blocking
|
||||
# Issue#6: Issue of a private subproject
|
||||
assert_equal [9, 10, 6], q.issues.map(&:id)
|
||||
end
|
||||
|
||||
def test_sort_by_total_for_estimated_hours
|
||||
# Prepare issues
|
||||
parent = issues(:issues_001)
|
||||
|
||||
Reference in New Issue
Block a user