Commit 0dddfd6e authored by jplang's avatar jplang

Fixed that moving a wiki page with a child raises an error when target wiki...

Fixed that moving a wiki page with a child raises an error when target wiki contains a page with the same name as the child (#21900).

git-svn-id: https://svn.redmine.org/redmine/trunk@15130 e93f8b46-1217-0410-a6f0-8f06a7374b81
parent fd32924e
......@@ -126,7 +126,7 @@ class WikiPage < ActiveRecord::Base
child.wiki_id = wiki_id
child.redirect_existing_links = redirect_existing_links
unless child.save
WikiPage.where(:id => child.id).update_all :parent_nil => nil
WikiPage.where(:id => child.id).update_all :parent_id => nil
end
end
end
......
......@@ -121,6 +121,24 @@ class WikiPageTest < ActiveSupport::TestCase
assert_equal parent, child.parent
end
def test_move_parent_with_child_with_duplicate_name_should_not_move_child
parent = WikiPage.create!(:wiki_id => 1, :title => 'Parent')
child = WikiPage.create!(:wiki_id => 1, :title => 'Child', :parent_id => parent.id)
parent.reload
# page with the same name as the child in the target wiki
WikiPage.create!(:wiki_id => 2, :title => 'Child')
parent.wiki_id = 2
parent.save!
parent.reload
assert_equal 2, parent.wiki_id
child.reload
assert_equal 1, child.wiki_id
assert_nil child.parent_id
end
def test_destroy
page = WikiPage.find(1)
page.destroy
......
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