diff --git a/lib/diaspora/shareable.rb b/lib/diaspora/shareable.rb index d6e13dee9fef94f3fb21afabb14e13a1351a3a40..85cea06f2f2c41f7a0827e87cd7a142ab3ead82f 100644 --- a/lib/diaspora/shareable.rb +++ b/lib/diaspora/shareable.rb @@ -111,7 +111,7 @@ module Diaspora def participants @participants ||= lambda do share_type = self.class.base_class.to_s - people = [self.author] + people = [] if self.respond_to? :comments people += Person.joins(:comments).where(:comments => {:commentable_id => self.id, :commentable_type => share_type}).all end diff --git a/spec/models/post_spec.rb b/spec/models/post_spec.rb index ddf5dda54cd537b2759c3b68aaf5bd2aeb256bf6..87106d706f5990962300a4ebd6823527a7eefb30 100644 --- a/spec/models/post_spec.rb +++ b/spec/models/post_spec.rb @@ -196,17 +196,12 @@ describe Post do end describe '#participants' do - it 'includes the post author' do - status = Factory(:status_message, :author => bob.person, :public => true) - status.participants.map(&:id).should == [bob.person.id] - end - it 'only returns the people that commented and liked the post' do status = Factory(:status_message, :author => bob.person, :public => true) alice.comment('too', :post => status) eve.like(true, :target => status) - status.participants.map(&:id).should =~ [alice, eve, bob].map{|x| x.person.id} + status.participants.map(&:id).should =~ [alice, eve].map{|x| x.person.id} end end