From 9fe54f9ef329165a7eba27e5dfd07aa589aa3ea1 Mon Sep 17 00:00:00 2001 From: Moises Machado Date: Thu, 6 Aug 2009 19:28:14 -0300 Subject: [PATCH] ActionItem1189: published article goes to selected folder --- app/models/published_article.rb | 8 +++++--- test/unit/published_article_test.rb | 12 ++++++++++++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/app/models/published_article.rb b/app/models/published_article.rb index e92a492..421c7e2 100644 --- a/app/models/published_article.rb +++ b/app/models/published_article.rb @@ -1,8 +1,10 @@ class PublishedArticle < Article before_create do |article| - parent = article.reference_article.parent - if parent && parent.blog? && article.profile.has_blog? - article.parent = article.profile.blog + unless article.parent + parent = article.reference_article.parent + if parent && parent.blog? && article.profile.has_blog? + article.parent = article.profile.blog + end end end diff --git a/test/unit/published_article_test.rb b/test/unit/published_article_test.rb index 3642cf0..9c8cf33 100644 --- a/test/unit/published_article_test.rb +++ b/test/unit/published_article_test.rb @@ -110,4 +110,16 @@ class PublishedArticleTest < ActiveSupport::TestCase assert_match /removed/, p.to_html end + + should 'specified parent overwrite blog' do + parent = mock + @article.stubs(:parent).returns(parent) + parent.stubs(:blog?).returns(true) + prof = Community.create!(:name => 'test_comm', :identifier => 'test_comm') + prof.articles << Blog.new(:profile => prof, :name => 'Blog test') + new_parent = Folder.create!(:profile => prof, :name => 'Folder test') + p = PublishedArticle.create!(:reference_article => @article, :profile => prof, :parent => new_parent) + + assert_equal p.parent, new_parent + end end -- libgit2 0.21.2