Fixed: error raised when copying project wiki with wiki module disabled (#13097).
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11332 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
eece12ddfd
commit
2cd749955e
|
@ -772,7 +772,7 @@ class Project < ActiveRecord::Base
|
||||||
def copy_wiki(project)
|
def copy_wiki(project)
|
||||||
# Check that the source project has a wiki first
|
# Check that the source project has a wiki first
|
||||||
unless project.wiki.nil?
|
unless project.wiki.nil?
|
||||||
self.wiki ||= Wiki.new
|
wiki = self.wiki || Wiki.new
|
||||||
wiki.attributes = project.wiki.attributes.dup.except("id", "project_id")
|
wiki.attributes = project.wiki.attributes.dup.except("id", "project_id")
|
||||||
wiki_pages_map = {}
|
wiki_pages_map = {}
|
||||||
project.wiki.pages.each do |page|
|
project.wiki.pages.each do |page|
|
||||||
|
@ -784,6 +784,8 @@ class Project < ActiveRecord::Base
|
||||||
wiki.pages << new_wiki_page
|
wiki.pages << new_wiki_page
|
||||||
wiki_pages_map[page.id] = new_wiki_page
|
wiki_pages_map[page.id] = new_wiki_page
|
||||||
end
|
end
|
||||||
|
|
||||||
|
self.wiki = wiki
|
||||||
wiki.save
|
wiki.save
|
||||||
# Reproduce page hierarchy
|
# Reproduce page hierarchy
|
||||||
project.wiki.pages.each do |page|
|
project.wiki.pages.each do |page|
|
||||||
|
|
|
@ -233,6 +233,15 @@ class ProjectCopyTest < ActiveSupport::TestCase
|
||||||
assert_equal "Start page", @project.wiki.start_page
|
assert_equal "Start page", @project.wiki.start_page
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test "#copy should copy wiki without wiki module" do
|
||||||
|
project = Project.new(:name => 'Copy Test', :identifier => 'copy-test', :enabled_module_names => [])
|
||||||
|
assert_difference 'Wiki.count' do
|
||||||
|
assert project.copy(@source_project)
|
||||||
|
end
|
||||||
|
|
||||||
|
assert project.wiki
|
||||||
|
end
|
||||||
|
|
||||||
test "#copy should copy wiki pages and content with hierarchy" do
|
test "#copy should copy wiki pages and content with hierarchy" do
|
||||||
assert_difference 'WikiPage.count', @source_project.wiki.pages.size do
|
assert_difference 'WikiPage.count', @source_project.wiki.pages.size do
|
||||||
assert @project.copy(@source_project)
|
assert @project.copy(@source_project)
|
||||||
|
|
Loading…
Reference in New Issue