]> source.dussan.org Git - redmine.git/commitdiff
Merged r9837 from trunk.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 17 Jun 2012 09:01:17 +0000 (09:01 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 17 Jun 2012 09:01:17 +0000 (09:01 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/branches/1.4-stable@9847 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/controllers/timelog_controller.rb
doc/CHANGELOG
test/functional/timelog_controller_test.rb

index e0b3826e84e8da62b8756e6efef45439b0feee5a..f0167d59b471a705aae50733d2a69c45ab8356e2 100644 (file)
@@ -39,7 +39,7 @@ class TimelogController < ApplicationController
 
   def index
     sort_init 'spent_on', 'desc'
-    sort_update 'spent_on' => 'spent_on',
+    sort_update 'spent_on' => ['spent_on', "#{TimeEntry.table_name}.created_on"],
                 'user' => 'user_id',
                 'activity' => 'activity_id',
                 'project' => "#{Project.table_name}.name",
index 781c5d613ad97e2ff67a9fce23f0cfc3b5aa0949..bd627d6e70ce02ca46f016a6814c37d77c03744e 100644 (file)
@@ -10,6 +10,7 @@ http://www.redmine.org/
 * Defect #11061: Cannot choose commit versions to view differences in Git/Mercurial repository view
 * Defect #11112: REST API - custom fields in POST/PUT ignored for time_entries
 * Defect #11133: Wiki-page section edit link can point to incorrect section
+* Defect #11178: Spent time sorted by date-descending order lists same-date entries in physical order
 * Feature #6597: Configurable session lifetime and timeout
 * Patch #11113: Small glitch in German localization
 
index 10f5ccde031baa057f7529af0d4e75e52896288b..7a0d0f57ebaad4e101b356ca01aba404fa866baa 100644 (file)
@@ -550,6 +550,20 @@ class TimelogControllerTest < ActionController::TestCase
       :attributes => {:action => "/projects/ecookbook/issues/1/time_entries", :id => 'query_form'}
   end
 
+  def test_index_should_sort_by_spent_on_and_created_on
+    t1 = TimeEntry.create!(:user => User.find(1), :project => Project.find(1), :hours => 1, :spent_on => '2012-06-16', :created_on => '2012-06-16 20:00:00', :activity_id => 10)
+    t2 = TimeEntry.create!(:user => User.find(1), :project => Project.find(1), :hours => 1, :spent_on => '2012-06-16', :created_on => '2012-06-16 20:05:00', :activity_id => 10)
+    t3 = TimeEntry.create!(:user => User.find(1), :project => Project.find(1), :hours => 1, :spent_on => '2012-06-15', :created_on => '2012-06-16 20:10:00', :activity_id => 10)
+
+    get :index, :project_id => 1, :from => '2012-06-15', :to => '2012-06-16'
+    assert_response :success
+    assert_equal [t2, t1, t3], assigns(:entries)
+
+    get :index, :project_id => 1, :from => '2012-06-15', :to => '2012-06-16', :sort => 'spent_on'
+    assert_response :success
+    assert_equal [t3, t1, t2], assigns(:entries)
+  end
+
   def test_index_atom_feed
     get :index, :project_id => 1, :format => 'atom'
     assert_response :success