VRFS-2193 - test musician display on Feed view according to new spec

This commit is contained in:
Anthony Davis 2015-02-01 21:40:23 -06:00
parent 4f08e26490
commit f1b826fbaf
2 changed files with 44 additions and 1 deletions

View File

@ -203,4 +203,32 @@ describe "Feed", :js => true, :type => :feature, :capybara_feature => true do
end
describe "session participants behavior (VRFS-2193)" do
let(:creator) { FactoryGirl.create(:user) }
let(:finder_1) { FactoryGirl.create(:user) }
let(:finder_2) { FactoryGirl.create(:user) }
specify "after session ends all participants are shown in Feed" do
creator, description = create_join_session creator, finder_1
# feed shows user, finder_1
formal_leave_by(finder_1)
# feed shows user
join_session(finder_2, description: description)
# feed shows user, finder_2
formal_leave_by(finder_2)
formal_leave_by(creator)
leave_music_session_sleep_delay #erg
in_client(creator) { verify_feed_shows_users creator, finder_1, finder_2 }
end
specify "during session only current participants are shown in Feed" do
creator, description = create_join_session creator, finder_1
formal_leave_by(finder_1)
join_session(finder_2, description: description)
leave_music_session_sleep_delay #erg
in_client(finder_1) { verify_feed_shows_users finder_2, creator }
end
end
end

View File

@ -481,7 +481,7 @@ def create_join_session(creator, joiners=[], options={})
creator, unique_session_desc = create_session(options)
# find session in second client
joiners.each do |joiner|
[*joiners].each do |joiner|
join_session(joiner, description: unique_session_desc)
end
@ -496,6 +496,21 @@ def formal_leave_by user
end
end
def verify_feed_shows_users *users
users = [*users]
visit "/client#/feed"
find('.feed-details a.details').trigger(:click)
within 'div.music-session-history-entry' do
users.each do |user|
# confirm user avatar exists
find("a.avatar-tiny[user-id=\"#{user.id}\"][hoveraction=\"musician\"] img")
# confirm user name exists
find("a.musician-name[user-id=\"#{user.id}\"][hoveraction=\"musician\"]", text: user.name)
end
end
end
def start_recording_with(creator, joiners=[], genre=nil)
create_join_session(creator, joiners, {genre: genre})
in_client(creator) do