From 6fe7f895205880391e17e9f54ac5f905a17b2f91 Mon Sep 17 00:00:00 2001 From: Victor Costa Date: Thu, 12 May 2016 09:25:06 -0300 Subject: [PATCH] recent_content: return block content in api call --- plugins/recent_content/lib/recent_content_block.rb | 8 ++++++++ plugins/recent_content/test/unit/recent_content_block_test.rb | 14 ++++++++++++++ 2 files changed, 22 insertions(+), 0 deletions(-) diff --git a/plugins/recent_content/lib/recent_content_block.rb b/plugins/recent_content/lib/recent_content_block.rb index a042b06..b680d68 100644 --- a/plugins/recent_content/lib/recent_content_block.rb +++ b/plugins/recent_content/lib/recent_content_block.rb @@ -48,4 +48,12 @@ class RecentContentBlock < Block attr == self.presentation_mode end + def api_content + children = self.articles_of_folder(self.root, self.total_items) + Noosfero::API::Entities::ArticleBase.represent(children).as_json + end + + def display_api_content_by_default? + false + end end diff --git a/plugins/recent_content/test/unit/recent_content_block_test.rb b/plugins/recent_content/test/unit/recent_content_block_test.rb index 38af2d5..1b451a6 100644 --- a/plugins/recent_content/test/unit/recent_content_block_test.rb +++ b/plugins/recent_content/test/unit/recent_content_block_test.rb @@ -142,4 +142,18 @@ class RecentContentBlockViewTest < ActionView::TestCase assert_match /Block Title/, content end + + should 'return articles in api_content' do + profile = create_user('testuser').person + + root = fast_create(Blog, name: 'test-blog', profile_id: profile.id) + article = fast_create(TextArticle, parent_id: root.id, profile_id: profile.id) + + block = RecentContentBlock.new + block.stubs(:holder).returns(profile) + block.selected_folder = root.id + block.presentation_mode = '' + assert_equal [article.id], block.api_content['articles'].map {|a| a[:id]} + end + end -- libgit2 0.21.2