diff options
author | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-11-09 08:54:45 +0000 |
---|---|---|
committer | Jean-Philippe Lang <jp_lang@yahoo.fr> | 2013-11-09 08:54:45 +0000 |
commit | 1871378648e1a35aa3afa8b80335215a22a956ec (patch) | |
tree | 395857cf2eb02d0e30cfa8b880ce5bf1ed705117 | |
parent | 3661766edc1b0e8647e51450b429baa89cbaa5d6 (diff) | |
download | redmine-1871378648e1a35aa3afa8b80335215a22a956ec.tar.gz redmine-1871378648e1a35aa3afa8b80335215a22a956ec.zip |
Gantt: sort versions like on the roadmap (#7335).
git-svn-id: http://svn.redmine.org/redmine/trunk@12247 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r-- | lib/redmine/helpers/gantt.rb | 6 | ||||
-rw-r--r-- | test/unit/lib/redmine/helpers/gantt_test.rb | 23 |
2 files changed, 5 insertions, 24 deletions
diff --git a/lib/redmine/helpers/gantt.rb b/lib/redmine/helpers/gantt.rb index 198de20a0..e9e77ff91 100644 --- a/lib/redmine/helpers/gantt.rb +++ b/lib/redmine/helpers/gantt.rb @@ -693,11 +693,7 @@ module Redmine end def self.sort_versions!(versions) - versions.sort! {|a, b| sort_version_logic(a) <=> sort_version_logic(b)} - end - - def self.sort_version_logic(version) - [(version.start_date || Date.new()), version.id] + versions.sort! end def current_limit diff --git a/test/unit/lib/redmine/helpers/gantt_test.rb b/test/unit/lib/redmine/helpers/gantt_test.rb index 1c46c6098..2354b1b5e 100644 --- a/test/unit/lib/redmine/helpers/gantt_test.rb +++ b/test/unit/lib/redmine/helpers/gantt_test.rb @@ -832,25 +832,10 @@ class Redmine::Helpers::GanttHelperTest < ActionView::TestCase def test_sort_versions project = Project.generate! version1 = Version.create!(:project => project, :name => 'test1') - version2 = Version.create!(:project => project, :name => 'test2') + version2 = Version.create!(:project => project, :name => 'test2', :effective_date => '2013-10-25') version3 = Version.create!(:project => project, :name => 'test3') - version4 = Version.create!(:project => project, :name => 'test4') - issue1 = Issue.generate!(:subject => "test", :project => project, - :fixed_version => version1) - issue2 = Issue.generate!(:subject => "test", :project => project, - :fixed_version => version2) - issue3 = Issue.generate!(:subject => "test", :project => project, - :fixed_version => version3, :start_date => (today - 1)) - issue4 = Issue.generate!(:subject => "test", :project => project, - :fixed_version => version4, :start_date => (today - 2)) - assert_nil version1.start_date - assert_nil version2.start_date - assert version1.id < version2.id - assert_equal today - 1, version3.start_date - assert_equal today - 2, version4.start_date - versions = [version4, version3, version2, version1] - Redmine::Helpers::Gantt.sort_versions!(versions) - assert_equal [version1.id, version2.id, version4.id, version3.id], - versions.map{|v| v.id} + version4 = Version.create!(:project => project, :name => 'test4', :effective_date => '2013-10-02') + + assert_equal versions.sort, Redmine::Helpers::Gantt.sort_versions!(versions) end end |