if @parent_issue
move_to_child_of(@parent_issue)
end
- reload
elsif parent_issue_id != parent_id
former_parent_id = parent_id
# moving an existing issue
# to another tree
unless root?
move_to_right_of(root)
- reload
end
old_root_id = root_id
self.root_id = (@parent_issue.nil? ? id : @parent_issue.root_id )
move_to_child_of(@parent_issue)
end
end
- reload
# delete invalid relations of all descendants
self_and_descendants.each do |issue|
issue.relations.each do |relation|
def test_gantt_should_display_relations
IssueRelation.delete_all
- issue1 = Issue.generate!(:start_date => 1.day.from_now, :due_date => 3.day.from_now)
- issue2 = Issue.generate!(:start_date => 1.day.from_now, :due_date => 3.day.from_now)
+ issue1 = Issue.generate!(:start_date => 1.day.from_now.to_date, :due_date => 3.day.from_now.to_date)
+ issue2 = Issue.generate!(:start_date => 1.day.from_now.to_date, :due_date => 3.day.from_now.to_date)
IssueRelation.create!(:issue_from => issue1, :issue_to => issue2, :relation_type => 'precedes')
get :show
:relation_type => IssueRelation::TYPE_PRECEDES)
assert_equal Date.parse('2012-10-18'), issue2.reload.start_date
+ issue1.reload
issue1.due_date = '2012-10-23'
issue1.save!
issue2.reload
:relation_type => IssueRelation::TYPE_PRECEDES)
assert_equal Date.parse('2012-10-18'), issue2.reload.start_date
+ issue1.reload
issue1.start_date = '2012-09-17'
issue1.due_date = '2012-09-18'
issue1.save!
:relation_type => IssueRelation::TYPE_PRECEDES)
assert_equal Date.parse('2012-10-18'), issue2.reload.start_date
+ issue1.reload
issue1.start_date = '2012-09-17'
issue1.due_date = '2012-09-18'
issue1.save!