diff --git a/lib/redmine/helpers/gantt.rb b/lib/redmine/helpers/gantt.rb index cec32372..0f86648e 100644 --- a/lib/redmine/helpers/gantt.rb +++ b/lib/redmine/helpers/gantt.rb @@ -283,8 +283,8 @@ module Redmine end def line_for_project(project, options) - # Skip versions that don't have a start_date - if project.is_a?(Project) && project.start_date + # Skip versions that don't have a start_date or due date + if project.is_a?(Project) && project.start_date && project.due_date options[:zoom] ||= 1 options[:g_width] ||= (self.date_to - self.date_from + 1) * options[:zoom] @@ -419,7 +419,7 @@ module Redmine def line_for_version(version, options) # Skip versions that don't have a start_date - if version.is_a?(Version) && version.start_date + if version.is_a?(Version) && version.start_date && version.due_date options[:zoom] ||= 1 options[:g_width] ||= (self.date_to - self.date_from + 1) * options[:zoom] diff --git a/test/functional/gantts_controller_test.rb b/test/functional/gantts_controller_test.rb index ffc799b2..4c891c3d 100644 --- a/test/functional/gantts_controller_test.rb +++ b/test/functional/gantts_controller_test.rb @@ -21,7 +21,7 @@ class GanttsControllerTest < ActionController::TestCase assert_select "div a.issue", /##{i.id}/ end - should_eventually "work without issue due dates" do + should "work without issue due dates" do Issue.update_all("due_date = NULL") get :show, :project_id => 1 @@ -29,6 +29,16 @@ class GanttsControllerTest < ActionController::TestCase assert_template 'show.html.erb' assert_not_nil assigns(:gantt) end + + should "work without issue and version due dates" do + Issue.update_all("due_date = NULL") + Version.update_all("effective_date = NULL") + + get :show, :project_id => 1 + assert_response :success + assert_template 'show.html.erb' + assert_not_nil assigns(:gantt) + end should "work cross project" do get :show