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 52 self.feed_title.nil? ? _('Feed Reader') : self.feed_title
53 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 55 def add_item(title, link, date, content)
64 56 self.feed_items.unshift( {:title => title, :link => link})
65 57 end
... ...
app/views/blocks/footers/feed_reader.html.erb 0 → 100644
... ... @@ -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 35 assert_equal 'Feed Reader', feed.title
36 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 38 should 'clear feed title and items' do
50 39 feed.feed_items = %w[ last-post second-post first-post ]
51 40 feed.feed_title = 'Feed Test'
... ... @@ -169,11 +158,14 @@ end
169 158  
170 159 require 'boxes_helper'
171 160 require 'block_helper'
  161 +require 'dates_helper'
172 162  
173 163 class FeedReaderBlockViewTest < ActionView::TestCase
174 164 include BoxesHelper
  165 + include DatesHelper
175 166  
176 167 ActionView::Base.send :include, BlockHelper
  168 + ActionView::Base.send :include, DatesHelper
177 169  
178 170 def setup
179 171 @feed = create(:feed_reader_block)
... ... @@ -216,4 +208,14 @@ class FeedReaderBlockViewTest &lt; ActionView::TestCase
216 208 assert_no_tag_in_string render_block_content(feed), :tag => 'a', :attributes => { :href => 'http://localhost/first-post' }, :content => 'first-post'
217 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 221 end
... ...