summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGo MAEDA <maeda@farend.jp>2018-04-09 13:00:41 +0000
committerGo MAEDA <maeda@farend.jp>2018-04-09 13:00:41 +0000
commit8b0bfbbc8b05c12e29199feb99ff6042a3461b67 (patch)
tree22bd16d594a9f143d95cad93224b87cb20742591
parent784b9f4aca932e922d356dd858b91795e93f80c2 (diff)
downloadredmine-8b0bfbbc8b05c12e29199feb99ff6042a3461b67.tar.gz
redmine-8b0bfbbc8b05c12e29199feb99ff6042a3461b67.zip
Gantt bars with start date and end date on the same day don't become red by overdue (#13521).
Patch by Mizuki ISHIKAWA. git-svn-id: http://svn.redmine.org/redmine/trunk@17294 e93f8b46-1217-0410-a6f0-8f06a7374b81
-rw-r--r--lib/redmine/helpers/gantt.rb6
-rw-r--r--test/unit/lib/redmine/helpers/gantt_test.rb14
2 files changed, 17 insertions, 3 deletions
diff --git a/lib/redmine/helpers/gantt.rb b/lib/redmine/helpers/gantt.rb
index c0b1f3148..294303209 100644
--- a/lib/redmine/helpers/gantt.rb
+++ b/lib/redmine/helpers/gantt.rb
@@ -595,11 +595,11 @@ module Redmine
coords[:bar_progress_end] = self.date_to - self.date_from + 1
end
end
- if progress_date < User.current.today
- late_date = [User.current.today, end_date].min
+ if progress_date <= User.current.today
+ late_date = [User.current.today, end_date].min + 1
if late_date > self.date_from && late_date > start_date
if late_date < self.date_to
- coords[:bar_late_end] = late_date - self.date_from + 1
+ coords[:bar_late_end] = late_date - self.date_from
else
coords[:bar_late_end] = self.date_to - self.date_from + 1
end
diff --git a/test/unit/lib/redmine/helpers/gantt_test.rb b/test/unit/lib/redmine/helpers/gantt_test.rb
index 1dd825d2c..351f9c037 100644
--- a/test/unit/lib/redmine/helpers/gantt_test.rb
+++ b/test/unit/lib/redmine/helpers/gantt_test.rb
@@ -353,6 +353,20 @@ class Redmine::Helpers::GanttHelperTest < Redmine::HelperTest
assert_select 'div.task_late[style*="width:30px"]', 1
end
+ test "#line late line should be the same width as task_todo if start date and end date are the same day" do
+ create_gantt
+ @output_buffer = @gantt.line(today - 7, today - 7, 0, false, 'line', :format => :html, :zoom => 4)
+ assert_select 'div.task_late[style*="width:2px"]', 1
+ assert_select 'div.task_todo[style*="width:2px"]', 1
+ end
+
+ test "#line late line should be the same width as task_todo if start date and today are the same day" do
+ create_gantt
+ @output_buffer = @gantt.line(today, today, 0, false, 'line', :format => :html, :zoom => 4)
+ assert_select 'div.task_late[style*="width:2px"]', 1
+ assert_select 'div.task_todo[style*="width:2px"]', 1
+ end
+
test "#line done line should start from the starting point on the left" do
create_gantt
@output_buffer = @gantt.line(today - 7, today + 7, 30, false, 'line', :format => :html, :zoom => 4)