Skip to content
Extraits de code Groupes Projets
Valider aa4d428a rédigé par Raphael's avatar Raphael
Parcourir les fichiers

RS, DG; Groups can now include other users, the user's first group is...

RS, DG; Groups can now include other users, the user's first group is displayed by default, never use many without :in =>
parent 4308f35b
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -20,7 +20,7 @@ class ApplicationController < ActionController::Base ...@@ -20,7 +20,7 @@ class ApplicationController < ActionController::Base
@groups = current_user.groups @groups = current_user.groups
@friends = current_user.friends @friends = current_user.friends
@latest_status_message = StatusMessage.newest_for(current_user) @latest_status_message = StatusMessage.newest_for(current_user)
@group = params[:group] ? Group.first(:id => params[:group]) : Group.first @group = params[:group] ? current_user.groups.first(:id => params[:group]) : current_user.groups.first
end end
end end
......
...@@ -3,7 +3,9 @@ class Group ...@@ -3,7 +3,9 @@ class Group
key :name, String key :name, String
many :people, :class_name => 'Person' key :person_ids, Array
many :people, :in => :person_ids, :class_name => 'Person'
belongs_to :user, :class_name => 'User' belongs_to :user, :class_name => 'User'
timestamps! timestamps!
......
...@@ -24,4 +24,15 @@ user2 = User.create( :email => "korth@tom.joindiaspora.com", ...@@ -24,4 +24,15 @@ user2 = User.create( :email => "korth@tom.joindiaspora.com",
:url => "http://tom.joindiaspora.com/", :url => "http://tom.joindiaspora.com/",
:profile => Profile.new( :first_name => "Evan", :profile => Profile.new( :first_name => "Evan",
:last_name => "Korth"))) :last_name => "Korth")))
user2.person.save user2.person.save
# friending users
user.friends << user2.person
user.group(:name => "other dudes", :people => [user2.person])
user.save
user2.friends << user.person
user2.group(:name => "some dudes", :people => [user.person])
user2.save
...@@ -4,6 +4,8 @@ describe Group do ...@@ -4,6 +4,8 @@ describe Group do
before do before do
@user = Factory.create(:user) @user = Factory.create(:user)
@friend = Factory.create(:person) @friend = Factory.create(:person)
@user2 = Factory.create(:user)
@friend_2 = Factory.create(:person)
end end
describe 'creation' do describe 'creation' do
...@@ -11,6 +13,27 @@ describe Group do ...@@ -11,6 +13,27 @@ describe Group do
group = @user.group(:name => 'losers') group = @user.group(:name => 'losers')
group.name.should == "losers" group.name.should == "losers"
end end
it 'should be able to have people' do
group = @user.group(:name => 'losers', :people => [@friend, @friend_2])
group.people.size.should == 2
end
it 'should be able to have other users' do
group = @user.group(:name => 'losers', :people => [@user2.person])
group.people.include?(@user.person).should be false
group.people.include?(@user2.person).should be true
group.people.size.should == 1
end
it 'should be able to have users and people' do
group = @user.group(:name => 'losers', :people => [@user2.person, @friend_2])
group.people.include?(@user.person).should be false
group.people.include?(@user2.person).should be true
group.people.include?(@friend_2).should be true
group.people.size.should == 2
end
end end
describe 'querying' do describe 'querying' do
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter