Commit a2e56267d6acc40366dc78e7476b4911b493842a
1 parent
19ac9d93
Exists in
master
and in
22 other branches
rails3: fix recent_documents_block_test
Apply again recet_documents_block fixes done in commit 54a29b33
Showing
2 changed files
with
19 additions
and
10 deletions
Show diff stats
app/models/recent_documents_block.rb
| @@ -15,11 +15,11 @@ class RecentDocumentsBlock < Block | @@ -15,11 +15,11 @@ class RecentDocumentsBlock < Block | ||
| 15 | settings_items :limit, :type => :integer, :default => 5 | 15 | settings_items :limit, :type => :integer, :default => 5 |
| 16 | 16 | ||
| 17 | def content(args={}) | 17 | def content(args={}) |
| 18 | - docs = self.limit.nil? ? owner.recent_documents(nil, {}, false) : owner.recent_documents(self.limit, {}, false) | 18 | + docs = self.docs |
| 19 | title = self.title | 19 | title = self.title |
| 20 | proc do | 20 | proc do |
| 21 | block_title(title) + | 21 | block_title(title) + |
| 22 | - content_tag('ul', docs.map {|item| content_tag('li', link_to(h(item.title), item.url))}.join("\n")) | 22 | + content_tag('ul', docs.map {|item| content_tag('li', link_to(h(item.title), item.url))}.join("\n")) |
| 23 | end | 23 | end |
| 24 | end | 24 | end |
| 25 | 25 | ||
| @@ -32,6 +32,10 @@ class RecentDocumentsBlock < Block | @@ -32,6 +32,10 @@ class RecentDocumentsBlock < Block | ||
| 32 | end | 32 | end |
| 33 | end | 33 | end |
| 34 | 34 | ||
| 35 | + def docs | ||
| 36 | + self.limit.nil? ? owner.recent_documents(nil, {}, false) : owner.recent_documents(self.limit, {}, false) | ||
| 37 | + end | ||
| 38 | + | ||
| 35 | def self.expire_on | 39 | def self.expire_on |
| 36 | { :profile => [:article], :environment => [:article] } | 40 | { :profile => [:article], :environment => [:article] } |
| 37 | end | 41 | end |
test/unit/recent_documents_block_test.rb
| @@ -31,14 +31,19 @@ class RecentDocumentsBlockTest < ActiveSupport::TestCase | @@ -31,14 +31,19 @@ class RecentDocumentsBlockTest < ActiveSupport::TestCase | ||
| 31 | assert_not_equal Block.new.default_title, RecentDocumentsBlock.new.default_title | 31 | assert_not_equal Block.new.default_title, RecentDocumentsBlock.new.default_title |
| 32 | end | 32 | end |
| 33 | 33 | ||
| 34 | - should 'output list with links to recent documents' do | ||
| 35 | - output = block.content | ||
| 36 | - | ||
| 37 | - assert_match /href=.*\/testinguser\/first/, output | ||
| 38 | - assert_match /href=.*\/testinguser\/second/, output | ||
| 39 | - assert_match /href=.*\/testinguser\/third/, output | ||
| 40 | - assert_match /href=.*\/testinguser\/fourth/, output | ||
| 41 | - assert_match /href=.*\/testinguser\/fifth/, output | 34 | + should 'list recent documents' do |
| 35 | + assert_equivalent block.docs, articles | ||
| 36 | + end | ||
| 37 | + | ||
| 38 | + should 'link to documents' do | ||
| 39 | + articles.each do |a| | ||
| 40 | + expects(:link_to).with(a.title, a.url) | ||
| 41 | + end | ||
| 42 | + stubs(:block_title).returns("") | ||
| 43 | + stubs(:content_tag).returns("") | ||
| 44 | + stubs(:li).returns("") | ||
| 45 | + | ||
| 46 | + instance_eval(&block.content) | ||
| 42 | end | 47 | end |
| 43 | 48 | ||
| 44 | should 'respect the maximum number of items as configured' do | 49 | should 'respect the maximum number of items as configured' do |