diff --git a/web/app/helpers/music_session_helper.rb b/web/app/helpers/music_session_helper.rb index b550e70f3..03001dc0d 100644 --- a/web/app/helpers/music_session_helper.rb +++ b/web/app/helpers/music_session_helper.rb @@ -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 diff --git a/web/spec/helpers/music_session_helper_spec.rb b/web/spec/helpers/music_session_helper_spec.rb index b84b09e39..1a01a6426 100644 --- a/web/spec/helpers/music_session_helper_spec.rb +++ b/web/spec/helpers/music_session_helper_spec.rb @@ -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 diff --git a/web/spec/helpers/recording_helper_spec.rb b/web/spec/helpers/recording_helper_spec.rb index d102a72dd..efb4608ec 100644 --- a/web/spec/helpers/recording_helper_spec.rb +++ b/web/spec/helpers/recording_helper_spec.rb @@ -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