* fix issues with music session 'other count' and tests

This commit is contained in:
Seth Call 2014-11-09 10:59:31 -06:00
parent 8a5a40db9c
commit f0b70b1bb7
3 changed files with 29 additions and 8 deletions

View File

@ -25,20 +25,27 @@ module MusicSessionHelper
else
unique_users = music_session.unique_users
if sharer && unique_users.exists?(sharer)
"LIVE SESSION: #{sharer.name}#{additional_member_count(unique_users)}"
"LIVE SESSION: #{sharer.name}#{additional_member_count(unique_users, sharer)}"
else
"LIVE SESSION: #{music_session.creator.name}#{additional_member_count(unique_users)}"
"LIVE SESSION: #{music_session.creator.name}#{additional_member_count(unique_users, music_session.creator)}"
end
end
end
def additional_member_count(unique_users)
def additional_member_count(unique_users, target_user)
length = unique_users.length
if length < 2
""
else
" & #{length} OTHERS"
other_length = length - 1
if other_length == 1
other_user_in_array = unique_users - [target_user]
other_user = other_user_in_array[0]
" & #{other_user.name}"
else
" & #{length - 1} OTHERS"
end
end
end

View File

@ -60,11 +60,18 @@ describe MusicSessionHelper do
describe "additional_member_count" do
it "no unique users" do
helper.additional_member_count([]).should == ""
helper.additional_member_count([], @user).should == ""
end
it "has 2 users" do
helper.additional_member_count(['', '']).should == " & 2 OTHERS"
user2 = FactoryGirl.create(:user)
helper.additional_member_count([@user, user2], @user).should == " & #{user2.name}"
end
it "has 3 users" do
user2 = FactoryGirl.create(:user)
user3 = FactoryGirl.create(:user)
helper.additional_member_count([@user, user2, user3], @user).should == " & 2 OTHERS"
end
end
end

View File

@ -106,11 +106,18 @@ describe MusicSessionHelper do
describe "additional_member_count" do
it "no unique users" do
helper.additional_member_count([]).should == ""
helper.additional_member_count([], @user).should == ""
end
it "has 2 users" do
helper.additional_member_count(['', '']).should == " & 2 OTHERS"
user2 = FactoryGirl.create(:user)
helper.additional_member_count([@user, user2], @user).should == " & #{user2.name}"
end
it "has 3 users" do
user2 = FactoryGirl.create(:user)
user3 = FactoryGirl.create(:user)
helper.additional_member_count([@user, user2, user3], @user).should == " & 2 OTHERS"
end
end
end