Commit 5167646409d9f13eafacc8494aa7ea79149bf564
1 parent
13239c9a
Exists in
ratings_minor_fixes
and in
4 other branches
avoid exception in recent content block used in environment without portal community defined
Showing
2 changed files
with
12 additions
and
1 deletions
Show diff stats
plugins/recent_content/lib/recent_content_block.rb
@@ -33,7 +33,7 @@ class RecentContentBlock < Block | @@ -33,7 +33,7 @@ class RecentContentBlock < Block | ||
33 | end | 33 | end |
34 | 34 | ||
35 | def parents | 35 | def parents |
36 | - self.holder.articles.where(type: 'Blog') | 36 | + self.holder.nil? ? [] : self.holder.articles.where(type: 'Blog') |
37 | end | 37 | end |
38 | 38 | ||
39 | def root | 39 | def root |
plugins/recent_content/test/unit/recent_content_block_test.rb
@@ -156,4 +156,15 @@ class RecentContentBlockViewTest < ActionView::TestCase | @@ -156,4 +156,15 @@ class RecentContentBlockViewTest < ActionView::TestCase | ||
156 | assert_equal [article.id], block.api_content['articles'].map {|a| a[:id]} | 156 | assert_equal [article.id], block.api_content['articles'].map {|a| a[:id]} |
157 | end | 157 | end |
158 | 158 | ||
159 | + should 'parents return an empty array for environment without portal community' do | ||
160 | + environment = fast_create(Environment) | ||
161 | + block = RecentContentBlock.new | ||
162 | + box = mock() | ||
163 | + block.stubs(:box).returns(box) | ||
164 | + box.stubs(:owner).returns(environment) | ||
165 | + | ||
166 | + assert_nil environment.portal_community | ||
167 | + assert_equal [], block.parents | ||
168 | + end | ||
169 | + | ||
159 | end | 170 | end |