Commit 4b3c5771 authored by jplang's avatar jplang

Fixed that query roles are not copied when copying a project (#17202).


git-svn-id: https://svn.redmine.org/redmine/trunk@13329 e93f8b46-1217-0410-a6f0-8f06a7374b81
parent 84878f8a
...@@ -952,6 +952,7 @@ class Project < ActiveRecord::Base ...@@ -952,6 +952,7 @@ class Project < ActiveRecord::Base
new_query.sort_criteria = query.sort_criteria if query.sort_criteria new_query.sort_criteria = query.sort_criteria if query.sort_criteria
new_query.project = self new_query.project = self
new_query.user_id = query.user_id new_query.user_id = query.user_id
new_query.role_ids = query.role_ids if query.visibility == IssueQuery::VISIBILITY_ROLES
self.queries << new_query self.queries << new_query
end end
end end
......
...@@ -178,6 +178,14 @@ module ObjectHelpers ...@@ -178,6 +178,14 @@ module ObjectHelpers
changeset.save! changeset.save!
changeset changeset
end end
def Query.generate!(attributes={})
query = new(attributes)
query.name = "Generated query" if query.name.blank?
query.user ||= User.find(1)
query.save!
query
end
end end
module IssueObjectHelpers module IssueObjectHelpers
......
...@@ -222,6 +222,17 @@ class ProjectCopyTest < ActiveSupport::TestCase ...@@ -222,6 +222,17 @@ class ProjectCopyTest < ActiveSupport::TestCase
assert_equal @source_project.queries.map(&:user_id).sort, @project.queries.map(&:user_id).sort assert_equal @source_project.queries.map(&:user_id).sort, @project.queries.map(&:user_id).sort
end end
def test_copy_should_copy_queries_roles_visibility
source = Project.generate!
target = Project.new(:name => 'Copy Test', :identifier => 'copy-test')
IssueQuery.generate!(:project => source, :visibility => Query::VISIBILITY_ROLES, :roles => Role.where(:id => [1, 3]).to_a)
assert target.copy(source)
assert_equal 1, target.queries.size
query = target.queries.first
assert_equal [1, 3], query.role_ids.sort
end
test "#copy should copy versions" do test "#copy should copy versions" do
@source_project.versions << Version.generate! @source_project.versions << Version.generate!
@source_project.versions << Version.generate! @source_project.versions << Version.generate!
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment