Commit 35e6a9494644b066d327b5f344b5e1ceba26805c

Authored by Rodrigo Souto
1 parent bdd8a4d0

stoa-api: make communities return name and url

plugins/stoa/lib/stoa_plugin/person_api.rb
@@ -31,6 +31,6 @@ class StoaPlugin::PersonApi < Noosfero::FieldsDecorator @@ -31,6 +31,6 @@ class StoaPlugin::PersonApi < Noosfero::FieldsDecorator
31 end 31 end
32 32
33 def communities 33 def communities
34 - object.communities.public.map {|community| {:id => community.id, :name => community.name}} 34 + object.communities.public.map {|community| {:url => context.url_for(community.url), :name => community.name}}
35 end 35 end
36 end 36 end
plugins/stoa/test/unit/person_api_test.rb
@@ -107,7 +107,11 @@ class StoaPlugin::PersonApiTest < ActiveSupport::TestCase @@ -107,7 +107,11 @@ class StoaPlugin::PersonApiTest < ActiveSupport::TestCase
107 c3 = fast_create(Community) 107 c3 = fast_create(Community)
108 c1.add_member(person) 108 c1.add_member(person)
109 c2.add_member(person) 109 c2.add_member(person)
110 - communities = [{:id => c1.id, :name => c1.name}, {:id => c2.id, :name => c2.name}] 110 + c1_homepage = 'c1.org'
  111 + c2_homepage = 'c2.org'
  112 + self.stubs(:url_for).with(c1.url).returns(c1_homepage)
  113 + self.stubs(:url_for).with(c2.url).returns(c2_homepage)
  114 + communities = [{:url => c1_homepage, :name => c1.name}, {:url => c2_homepage, :name => c2.name}]
111 api = StoaPlugin::PersonApi.new(person, self) 115 api = StoaPlugin::PersonApi.new(person, self)
112 116
113 assert_equivalent communities, api.communities 117 assert_equivalent communities, api.communities
@@ -120,7 +124,11 @@ class StoaPlugin::PersonApiTest < ActiveSupport::TestCase @@ -120,7 +124,11 @@ class StoaPlugin::PersonApiTest < ActiveSupport::TestCase
120 c1.add_member(person) 124 c1.add_member(person)
121 c2.add_member(person) 125 c2.add_member(person)
122 c3.add_member(person) 126 c3.add_member(person)
123 - communities = [{:id => c1.id, :name => c1.name}] 127 + c1_homepage = 'c1.org'
  128 + c2_homepage = 'c2.org'
  129 + self.stubs(:url_for).with(c1.url).returns(c1_homepage)
  130 + self.stubs(:url_for).with(c2.url).returns(c2_homepage)
  131 + communities = [{:url => c1_homepage, :name => c1.name}]
124 api = StoaPlugin::PersonApi.new(person, self) 132 api = StoaPlugin::PersonApi.new(person, self)
125 133
126 assert_equivalent communities, api.communities 134 assert_equivalent communities, api.communities