Commit 502073f7bf28d64ec2227db1496c4381d12b103e
Committed by
Antonio Terceiro
1 parent
d27a79ec
Exists in
staging
and in
42 other branches
Articles published from external_feeds copy the source
(ActionItem1620)
Showing
3 changed files
with
20 additions
and
1 deletions
Show diff stats
app/models/approve_article.rb
@@ -64,7 +64,7 @@ class ApproveArticle < Task | @@ -64,7 +64,7 @@ class ApproveArticle < Task | ||
64 | end | 64 | end |
65 | 65 | ||
66 | def perform | 66 | def perform |
67 | - PublishedArticle.create!(:name => name, :profile => target, :reference_article => article, :parent => article_parent, :highlighted => highlighted) | 67 | + PublishedArticle.create!(:name => name, :profile => target, :reference_article => article, :parent => article_parent, :highlighted => highlighted, :source => article.source) |
68 | end | 68 | end |
69 | 69 | ||
70 | def target_notification_message | 70 | def target_notification_message |
db/migrate/20100811211216_set_published_articles_source.rb
0 → 100644
@@ -0,0 +1,9 @@ | @@ -0,0 +1,9 @@ | ||
1 | +class SetPublishedArticlesSource < ActiveRecord::Migration | ||
2 | + def self.up | ||
3 | + update("update articles set source = (select source from articles origin where origin.id = articles.reference_article_id) where articles.type = 'PublishedArticle';") | ||
4 | + end | ||
5 | + | ||
6 | + def self.down | ||
7 | + say "this migration can't be reverted" | ||
8 | + end | ||
9 | +end |
test/unit/approve_article_test.rb
@@ -97,4 +97,14 @@ class ApproveArticleTest < ActiveSupport::TestCase | @@ -97,4 +97,14 @@ class ApproveArticleTest < ActiveSupport::TestCase | ||
97 | assert ActionMailer::Base.deliveries.empty? | 97 | assert ActionMailer::Base.deliveries.empty? |
98 | end | 98 | end |
99 | 99 | ||
100 | + should 'copy the source from the original article' do | ||
101 | + article = fast_create(TextArticle, :profile_id => profile.id, :name => 'test article', :source => "sample-feed.com") | ||
102 | + community = fast_create(Community, :name => 'test comm') | ||
103 | + | ||
104 | + a = ApproveArticle.create!(:name => 'test name', :article => article, :target => community, :requestor => profile) | ||
105 | + a.finish | ||
106 | + | ||
107 | + assert_equal PublishedArticle.last.source, article.source | ||
108 | + end | ||
109 | + | ||
100 | end | 110 | end |