From 8dfeff6c59228d66e5e77d9a27b47aa84eab851b Mon Sep 17 00:00:00 2001 From: Rafael Reggiani Manzo Date: Thu, 10 Mar 2016 10:12:41 -0300 Subject: [PATCH] Refactor FeedReaderBlock footer into helper/view --- app/models/feed_reader_block.rb | 8 -------- app/views/blocks/footers/feed_reader.html.erb | 5 +++++ test/unit/feed_reader_block_test.rb | 24 +++++++++++++----------- 3 files changed, 18 insertions(+), 19 deletions(-) create mode 100644 app/views/blocks/footers/feed_reader.html.erb diff --git a/app/models/feed_reader_block.rb b/app/models/feed_reader_block.rb index 3b38350..6153c1b 100644 --- a/app/models/feed_reader_block.rb +++ b/app/models/feed_reader_block.rb @@ -52,14 +52,6 @@ class FeedReaderBlock < Block self.feed_title.nil? ? _('Feed Reader') : self.feed_title end - def footer - if self.fetched_at.nil? or self.feed_items.empty? - _('Feed content was not loaded yet') - else - _("Updated: %s") % show_date(self.fetched_at) - end - end - def add_item(title, link, date, content) self.feed_items.unshift( {:title => title, :link => link}) end diff --git a/app/views/blocks/footers/feed_reader.html.erb b/app/views/blocks/footers/feed_reader.html.erb new file mode 100644 index 0000000..16aa3aa --- /dev/null +++ b/app/views/blocks/footers/feed_reader.html.erb @@ -0,0 +1,5 @@ +<% if block.fetched_at.nil? or block.feed_items.empty? %> + <%= _('Feed content was not loaded yet') %> +<% else %> + <%= _("Updated: %s") % show_date(block.fetched_at) %> +<% end %> diff --git a/test/unit/feed_reader_block_test.rb b/test/unit/feed_reader_block_test.rb index 41ee77a..a4ed3f0 100644 --- a/test/unit/feed_reader_block_test.rb +++ b/test/unit/feed_reader_block_test.rb @@ -35,17 +35,6 @@ class FeedReaderBlockTest < ActiveSupport::TestCase assert_equal 'Feed Reader', feed.title end - should 'notice when content not fetched yet' do - assert_equal'Feed content was not loaded yet', feed.footer - end - - should 'display last fetched date' do - now = Time.new(2014,1,1) - feed.feed_items = ['one', 'two'] - feed.fetched_at = now - assert_equal "Updated: #{show_date(now)}", feed.footer - end - should 'clear feed title and items' do feed.feed_items = %w[ last-post second-post first-post ] feed.feed_title = 'Feed Test' @@ -169,11 +158,14 @@ end require 'boxes_helper' require 'block_helper' +require 'dates_helper' class FeedReaderBlockViewTest < ActionView::TestCase include BoxesHelper + include DatesHelper ActionView::Base.send :include, BlockHelper + ActionView::Base.send :include, DatesHelper def setup @feed = create(:feed_reader_block) @@ -216,4 +208,14 @@ class FeedReaderBlockViewTest < ActionView::TestCase assert_no_tag_in_string render_block_content(feed), :tag => 'a', :attributes => { :href => 'http://localhost/first-post' }, :content => 'first-post' end + should 'notice when content not fetched yet' do + assert_equal " Feed content was not loaded yet\n", render_block_footer(feed) + end + + should 'display last fetched date' do + now = Time.new(2014,1,1) + feed.feed_items = ['one', 'two'] + feed.fetched_at = now + assert_equal " Updated: #{show_date(now)}\n", render_block_footer(feed) + end end -- libgit2 0.21.2