From f570199d1786bded07fd30e7aac921934ca2f842 Mon Sep 17 00:00:00 2001 From: Raphael Date: Wed, 18 Aug 2010 14:30:16 -0700 Subject: [PATCH] Add a couple specs to groups, moved socketing into each block, unclear where or why groups are being created wrongly --- app/models/user.rb | 8 ++++---- spec/models/group_spec.rb | 17 +++++++++++++++-- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/app/models/user.rb b/app/models/user.rb index e4406c0a6..b5d0716c1 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -269,12 +269,12 @@ class User self.save groups = self.groups_with_person(object.person) - groups.each{ |group| group.posts << object - group.save + groups.each{ |group| + group.posts << object + group.save + object.socket_to_uid(id, :group_id => group.id) if (object.respond_to?(:socket_to_uid) && !self.owns?(object)) } - groups = groups_with_person(object.person) - object.socket_to_uid(id, :group_id => group.id) if (object.respond_to?(:socket_to_uid) && !self.owns?(object)) end end diff --git a/spec/models/group_spec.rb b/spec/models/group_spec.rb index 26f3397d4..530bcec8c 100644 --- a/spec/models/group_spec.rb +++ b/spec/models/group_spec.rb @@ -37,7 +37,11 @@ describe Group do describe 'querying' do before do - @group = @user.group(:name => 'losers', :people => [@friend]) + @group = @user.group(:name => 'losers') + @user.activate_friend(@friend, @group) + @group2 = @user2.group(:name => 'failures') + friend_users(@user, @group, @user2, @group2) + @group.reload end it 'belong to a user' do @@ -48,7 +52,16 @@ describe Group do it 'should have people' do @group.people.all.include?(@friend).should be true - @group.people.size.should == 1 + @group.people.size.should == 2 + end + + it 'should be accessible through the user' do + groups = @user.groups_with_person(@friend) + groups.size.should == 1 + groups.first.id.should == @group.id + groups.first.people.size.should == 2 + groups.first.people.include?(@friend).should be true + groups.first.people.include?(@user2.person).should be true end end