173 |
173 |
end
|
174 |
174 |
|
175 |
175 |
test "#copy should copy issue relations" do
|
176 |
|
Setting.cross_project_issue_relations = '1'
|
177 |
|
|
178 |
|
second_issue = Issue.generate!(:status_id => 5,
|
179 |
|
:subject => "copy issue relation",
|
180 |
|
:tracker_id => 1,
|
181 |
|
:assigned_to_id => 2,
|
182 |
|
:project_id => @source_project.id)
|
183 |
|
source_relation = IssueRelation.create!(:issue_from => Issue.find(4),
|
|
176 |
with_settings :cross_project_issue_relations => '1' do
|
|
177 |
second_issue = Issue.generate!(:status_id => 5,
|
|
178 |
:subject => "copy issue relation",
|
|
179 |
:tracker_id => 1,
|
|
180 |
:assigned_to_id => 2,
|
|
181 |
:project_id => @source_project.id)
|
|
182 |
source_relation = IssueRelation.create!(:issue_from => Issue.find(4),
|
184 |
183 |
:issue_to => second_issue,
|
185 |
184 |
:relation_type => "relates")
|
186 |
|
source_relation_cross_project = IssueRelation.create!(:issue_from => Issue.find(1),
|
|
185 |
source_relation_cross_project = IssueRelation.create!(:issue_from => Issue.find(1),
|
187 |
186 |
:issue_to => second_issue,
|
188 |
187 |
:relation_type => "duplicates")
|
189 |
188 |
|
190 |
|
assert @project.copy(@source_project)
|
191 |
|
assert_equal @source_project.issues.count, @project.issues.count
|
192 |
|
copied_issue = @project.issues.find_by_subject("Issue on project 2") # Was #4
|
193 |
|
copied_second_issue = @project.issues.find_by_subject("copy issue relation")
|
194 |
|
|
195 |
|
# First issue with a relation on project
|
196 |
|
assert_equal 1, copied_issue.relations.size, "Relation not copied"
|
197 |
|
copied_relation = copied_issue.relations.first
|
198 |
|
assert_equal "relates", copied_relation.relation_type
|
199 |
|
assert_equal copied_second_issue.id, copied_relation.issue_to_id
|
200 |
|
assert_not_equal source_relation.id, copied_relation.id
|
201 |
|
|
202 |
|
# Second issue with a cross project relation
|
203 |
|
assert_equal 2, copied_second_issue.relations.size, "Relation not copied"
|
204 |
|
copied_relation = copied_second_issue.relations.find {|r| r.relation_type == 'duplicates'}
|
205 |
|
assert_equal "duplicates", copied_relation.relation_type
|
206 |
|
assert_equal 1, copied_relation.issue_from_id, "Cross project relation not kept"
|
207 |
|
assert_not_equal source_relation_cross_project.id, copied_relation.id
|
|
189 |
assert @project.copy(@source_project)
|
|
190 |
assert_equal @source_project.issues.count, @project.issues.count
|
|
191 |
copied_issue = @project.issues.find_by_subject("Issue on project 2") # Was #4
|
|
192 |
copied_second_issue = @project.issues.find_by_subject("copy issue relation")
|
|
193 |
|
|
194 |
# First issue with a relation on project
|
|
195 |
assert_equal 1, copied_issue.relations.size, "Relation not copied"
|
|
196 |
copied_relation = copied_issue.relations.first
|
|
197 |
assert_equal "relates", copied_relation.relation_type
|
|
198 |
assert_equal copied_second_issue.id, copied_relation.issue_to_id
|
|
199 |
assert_not_equal source_relation.id, copied_relation.id
|
|
200 |
|
|
201 |
# Second issue with a cross project relation
|
|
202 |
assert_equal 2, copied_second_issue.relations.size, "Relation not copied"
|
|
203 |
copied_relation = copied_second_issue.relations.find {|r| r.relation_type == 'duplicates'}
|
|
204 |
assert_equal "duplicates", copied_relation.relation_type
|
|
205 |
assert_equal 1, copied_relation.issue_from_id, "Cross project relation not kept"
|
|
206 |
assert_not_equal source_relation_cross_project.id, copied_relation.id
|
|
207 |
end
|
208 |
208 |
end
|
209 |
209 |
|
210 |
210 |
test "#copy should copy issue attachments" do
|