From e4a49c3b743b2e07c5f15ca100c34e8ffdb0f9eb Mon Sep 17 00:00:00 2001 From: AntonioTerceiro Date: Thu, 27 Dec 2007 19:16:19 +0000 Subject: [PATCH] ActionItem23: refactoring: transformed settings in attributes --- app/models/rss_feed.rb | 27 ++++++++++++++++++++++++--- test/unit/rss_feed_test.rb | 8 ++++---- 2 files changed, 28 insertions(+), 7 deletions(-) diff --git a/app/models/rss_feed.rb b/app/models/rss_feed.rb index 3d6cad1..bbbee3c 100644 --- a/app/models/rss_feed.rb +++ b/app/models/rss_feed.rb @@ -8,6 +8,27 @@ class RssFeed < Article end alias :settings :body + def limit + settings[:limit] + end + def limit=(value) + settings[:limit] = value + end + + def include + settings[:include] + end + def include=(value) + settings[:include] = value + end + + def feed_item_description + settings[:feed_item_description] + end + def feed_item_description=(value) + settings[:feed_item_description] = value + end + # TODO def to_html end @@ -20,10 +41,10 @@ class RssFeed < Article # FIXME feed real data into the RSS feed def data articles = - if (self.settings[:include] == :parent_and_children) && self.parent + if (self.include == :parent_and_children) && self.parent self.parent.map_traversal else - profile.recent_documents(self.settings[:limit] || 10) + profile.recent_documents(self.limit || 10) end @@ -41,7 +62,7 @@ class RssFeed < Article unless self == article xml.item do xml.title(article.name) - if self.settings[:description] == :body + if self.feed_item_description == :body xml.description(article.body) else xml.description(article.abstract) diff --git a/test/unit/rss_feed_test.rb b/test/unit/rss_feed_test.rb index 87fb2ce..b19d1d9 100644 --- a/test/unit/rss_feed_test.rb +++ b/test/unit/rss_feed_test.rb @@ -11,7 +11,7 @@ class RssFeedTest < Test::Unit::TestCase assert_kind_of Hash, feed.body feed.body = { - :description => :abstract, + :feed_item_description => :abstract, :search => :parent_and_children, } feed.valid? @@ -74,7 +74,7 @@ class RssFeedTest < Test::Unit::TestCase assert_match /my abstract<\/description>/, rss assert_no_match /my text<\/description>/, rss - feed.settings[:description] = :body + feed.feed_item_description = :body rss = feed.data assert_match /my text<\/description>/, rss assert_no_match /my abstract<\/description>/, rss @@ -93,7 +93,7 @@ class RssFeedTest < Test::Unit::TestCase feed = RssFeed.new(:name => 'feed') feed.parent = a3 feed.profile = profile - feed.settings[:include] = :parent_and_children + feed.include = :parent_and_children feed.save! rss = feed.data @@ -119,7 +119,7 @@ class RssFeedTest < Test::Unit::TestCase feed.profile.expects(:recent_documents).with(10).returns([]).once feed.data - feed.settings[:limit] = 5 + feed.limit = 5 feed.profile.expects(:recent_documents).with(5).returns([]).once feed.data end -- libgit2 0.21.2