Fixed that target version is lost on project copy for issues that are assigned to a shared version from another project.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@10333 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
18ed4cf373
commit
5e9320137b
|
@ -776,7 +776,7 @@ class Project < ActiveRecord::Base
|
||||||
new_issue.copy_from(issue, :subtasks => false)
|
new_issue.copy_from(issue, :subtasks => false)
|
||||||
new_issue.project = self
|
new_issue.project = self
|
||||||
# Reassign fixed_versions by name, since names are unique per project
|
# Reassign fixed_versions by name, since names are unique per project
|
||||||
if issue.fixed_version
|
if issue.fixed_version && issue.fixed_version.project == project
|
||||||
new_issue.fixed_version = self.versions.detect {|v| v.name == issue.fixed_version.name}
|
new_issue.fixed_version = self.versions.detect {|v| v.name == issue.fixed_version.name}
|
||||||
end
|
end
|
||||||
# Reassign the category by name, since names are unique per project
|
# Reassign the category by name, since names are unique per project
|
||||||
|
|
|
@ -844,6 +844,22 @@ class ProjectTest < ActiveSupport::TestCase
|
||||||
assert_not_equal assigned_version.id, copied_issue.fixed_version.id # Different record
|
assert_not_equal assigned_version.id, copied_issue.fixed_version.id # Different record
|
||||||
end
|
end
|
||||||
|
|
||||||
|
should "keep target shared versions from other project" do
|
||||||
|
assigned_version = Version.generate!(:name => "Assigned Issues", :status => 'open', :project_id => 1, :sharing => 'system')
|
||||||
|
issue = Issue.generate_for_project!(@source_project,
|
||||||
|
:fixed_version => assigned_version,
|
||||||
|
:subject => "keep target shared versions",
|
||||||
|
:tracker_id => 1,
|
||||||
|
:project_id => @source_project.id)
|
||||||
|
|
||||||
|
assert @project.copy(@source_project)
|
||||||
|
@project.reload
|
||||||
|
copied_issue = @project.issues.first(:conditions => {:subject => "keep target shared versions"})
|
||||||
|
|
||||||
|
assert copied_issue
|
||||||
|
assert_equal assigned_version, copied_issue.fixed_version
|
||||||
|
end
|
||||||
|
|
||||||
should "copy issue relations" do
|
should "copy issue relations" do
|
||||||
Setting.cross_project_issue_relations = '1'
|
Setting.cross_project_issue_relations = '1'
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue