Commit 8dfeff6c59228d66e5e77d9a27b47aa84eab851b

Authored by Rafael Reggiani Manzo
1 parent c6674dd3

Refactor FeedReaderBlock footer into helper/view

app/models/feed_reader_block.rb
@@ -52,14 +52,6 @@ class FeedReaderBlock < Block @@ -52,14 +52,6 @@ class FeedReaderBlock < Block
52 self.feed_title.nil? ? _('Feed Reader') : self.feed_title 52 self.feed_title.nil? ? _('Feed Reader') : self.feed_title
53 end 53 end
54 54
55 - def footer  
56 - if self.fetched_at.nil? or self.feed_items.empty?  
57 - _('Feed content was not loaded yet')  
58 - else  
59 - _("Updated: %s") % show_date(self.fetched_at)  
60 - end  
61 - end  
62 -  
63 def add_item(title, link, date, content) 55 def add_item(title, link, date, content)
64 self.feed_items.unshift( {:title => title, :link => link}) 56 self.feed_items.unshift( {:title => title, :link => link})
65 end 57 end
app/views/blocks/footers/feed_reader.html.erb 0 → 100644
@@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
  1 +<% if block.fetched_at.nil? or block.feed_items.empty? %>
  2 + <%= _('Feed content was not loaded yet') %>
  3 +<% else %>
  4 + <%= _("Updated: %s") % show_date(block.fetched_at) %>
  5 +<% end %>
test/unit/feed_reader_block_test.rb
@@ -35,17 +35,6 @@ class FeedReaderBlockTest &lt; ActiveSupport::TestCase @@ -35,17 +35,6 @@ class FeedReaderBlockTest &lt; ActiveSupport::TestCase
35 assert_equal 'Feed Reader', feed.title 35 assert_equal 'Feed Reader', feed.title
36 end 36 end
37 37
38 - should 'notice when content not fetched yet' do  
39 - assert_equal'Feed content was not loaded yet', feed.footer  
40 - end  
41 -  
42 - should 'display last fetched date' do  
43 - now = Time.new(2014,1,1)  
44 - feed.feed_items = ['one', 'two']  
45 - feed.fetched_at = now  
46 - assert_equal "Updated: #{show_date(now)}", feed.footer  
47 - end  
48 -  
49 should 'clear feed title and items' do 38 should 'clear feed title and items' do
50 feed.feed_items = %w[ last-post second-post first-post ] 39 feed.feed_items = %w[ last-post second-post first-post ]
51 feed.feed_title = 'Feed Test' 40 feed.feed_title = 'Feed Test'
@@ -169,11 +158,14 @@ end @@ -169,11 +158,14 @@ end
169 158
170 require 'boxes_helper' 159 require 'boxes_helper'
171 require 'block_helper' 160 require 'block_helper'
  161 +require 'dates_helper'
172 162
173 class FeedReaderBlockViewTest < ActionView::TestCase 163 class FeedReaderBlockViewTest < ActionView::TestCase
174 include BoxesHelper 164 include BoxesHelper
  165 + include DatesHelper
175 166
176 ActionView::Base.send :include, BlockHelper 167 ActionView::Base.send :include, BlockHelper
  168 + ActionView::Base.send :include, DatesHelper
177 169
178 def setup 170 def setup
179 @feed = create(:feed_reader_block) 171 @feed = create(:feed_reader_block)
@@ -216,4 +208,14 @@ class FeedReaderBlockViewTest &lt; ActionView::TestCase @@ -216,4 +208,14 @@ class FeedReaderBlockViewTest &lt; ActionView::TestCase
216 assert_no_tag_in_string render_block_content(feed), :tag => 'a', :attributes => { :href => 'http://localhost/first-post' }, :content => 'first-post' 208 assert_no_tag_in_string render_block_content(feed), :tag => 'a', :attributes => { :href => 'http://localhost/first-post' }, :content => 'first-post'
217 end 209 end
218 210
  211 + should 'notice when content not fetched yet' do
  212 + assert_equal " Feed content was not loaded yet\n", render_block_footer(feed)
  213 + end
  214 +
  215 + should 'display last fetched date' do
  216 + now = Time.new(2014,1,1)
  217 + feed.feed_items = ['one', 'two']
  218 + feed.fetched_at = now
  219 + assert_equal " Updated: #{show_date(now)}\n", render_block_footer(feed)
  220 + end
219 end 221 end