Merge branch 'develop' into musicians_page
This commit is contained in:
commit
2c7d7bb5a4
|
|
@ -51,7 +51,7 @@
|
|||
<div class="clearall"></div>
|
||||
<div class="mt10" style="padding-left:2px;">
|
||||
<div class="left">
|
||||
<a layout-link="add-new-audio-gear" class="button-grey" style="margin-left:0px;">ADD NEW AUDIO GEAR</a>
|
||||
<a layout-link="add-new-audio-gear" id="btn-add-new-audio-gear" class="button-grey" style="margin-left:0px;">ADD NEW AUDIO GEAR</a>
|
||||
</div>
|
||||
<div class="right mr40">
|
||||
<a layout-action="close" class="button-grey">CANCEL</a>
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@
|
|||
<div class="clearall"></div>
|
||||
<div class="mt10" style="padding-left:2px;">
|
||||
<div class="left">
|
||||
<a layout-link="add-new-audio-gear" class="button-grey" style="margin-left:0px;">ADD NEW AUDIO GEAR</a>
|
||||
<a layout-link="add-new-audio-gear" id="btn-add-new-audio-gear" class="button-grey" style="margin-left:0px;">ADD NEW AUDIO GEAR</a>
|
||||
</div>
|
||||
<div class="right mr35">
|
||||
<a id="btn-cancel-settings" class="button-grey">CANCEL</a>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ describe "In a Session", :js => true, :type => :feature, :capybara_feature => tr
|
|||
before(:all) do
|
||||
Capybara.javascript_driver = :poltergeist
|
||||
Capybara.current_driver = Capybara.javascript_driver
|
||||
Capybara.default_wait_time = 30 # these tests are SLOOOOOW
|
||||
Capybara.default_wait_time = 15
|
||||
end
|
||||
|
||||
let(:user) { FactoryGirl.create(:user) }
|
||||
|
|
@ -15,22 +15,53 @@ describe "In a Session", :js => true, :type => :feature, :capybara_feature => tr
|
|||
|
||||
before(:each) do
|
||||
UserMailer.deliveries.clear
|
||||
MusicSession.delete_all
|
||||
end
|
||||
|
||||
it "isn't possible to see a private session until it is made public", :slow => true do
|
||||
MusicSession.delete_all
|
||||
|
||||
it "can't see a private session until it is made public", :slow => true do
|
||||
create_session(user, description = "Public or private, I cant decide!")
|
||||
set_session_as_private(user)
|
||||
in_client(finder) do
|
||||
sign_in_poltergeist finder
|
||||
visit "/client#/findSession"
|
||||
# verify private session is not found
|
||||
expect(page).to have_selector('#sessions-none-found')
|
||||
expect(page).to have_selector('#sessions-none-found') # verify private session is not found
|
||||
end
|
||||
|
||||
set_session_as_public(user)
|
||||
join_session(finder, description) # verify the public session is able to be joined
|
||||
|
||||
end
|
||||
|
||||
|
||||
it "can open the Configure Tracks modal, and Add New Audio Gear", :slow => true do
|
||||
create_session(user, description = "I'm gonna bail at some point!")
|
||||
join_session(finder, description)
|
||||
|
||||
assert_all_tracks_seen(users=[user, finder])
|
||||
|
||||
in_client(user) do
|
||||
find('#track-settings').trigger(:click)
|
||||
wait_for_ajax
|
||||
expect(page).to have_selector('h1', text: 'configure tracks')
|
||||
|
||||
find('#btn-add-new-audio-gear').trigger(:click)
|
||||
wait_for_ajax
|
||||
expect(page).to have_selector('h1', text: 'add new audio gear')
|
||||
|
||||
find('#btn-leave-session-test').trigger(:click)
|
||||
wait_for_ajax
|
||||
expect(page).to have_selector('h1', text: 'audio gear setup')
|
||||
end
|
||||
|
||||
leave_music_session_sleep_delay
|
||||
in_client(finder) { expect(page).to_not have_selector('div.track-label', text: user.name) }
|
||||
end
|
||||
|
||||
#it "can see all tracks with four users", :slow => true do
|
||||
# others = Array.new
|
||||
# 3.times { others.push FactoryGirl.create(:user) }
|
||||
# create_join_session(user, others)
|
||||
# assert_all_tracks_seen(others.push user)
|
||||
#end
|
||||
|
||||
end
|
||||
|
|
|
|||
|
|
@ -2,13 +2,6 @@ require 'spec_helper'
|
|||
|
||||
describe "Music Session", :js => true, :type => :feature, :capybara_feature => true, :slow => true do
|
||||
|
||||
def leave_music_session_sleep_delay
|
||||
# add a buffer to ensure WSG has enough time to expire
|
||||
sleep_dur = (Rails.application.config.websocket_gateway_connect_time_stale +
|
||||
Rails.application.config.websocket_gateway_connect_time_expire) * 1.4
|
||||
sleep sleep_dur
|
||||
end
|
||||
|
||||
def leave_music_session_cleanly(usr)
|
||||
usr.music_session_histories.count.should be == 1
|
||||
usr.music_session_user_histories.count.should be == 1
|
||||
|
|
|
|||
|
|
@ -44,6 +44,14 @@ def sign_out()
|
|||
end
|
||||
|
||||
|
||||
def leave_music_session_sleep_delay
|
||||
# add a buffer to ensure WSG has enough time to expire
|
||||
sleep_dur = (Rails.application.config.websocket_gateway_connect_time_stale +
|
||||
Rails.application.config.websocket_gateway_connect_time_expire) * 1.4
|
||||
sleep sleep_dur
|
||||
end
|
||||
|
||||
|
||||
def wait_for_ajax(wait=Capybara.default_wait_time)
|
||||
wait = wait * 10 #(because we sleep .1)
|
||||
|
||||
|
|
@ -72,6 +80,10 @@ def wait_until_curtain_gone
|
|||
should have_no_selector('.curtain')
|
||||
end
|
||||
|
||||
def wait_to_see_my_track
|
||||
within('div.session-mytracks') {first('div.session-track.track')}
|
||||
end
|
||||
|
||||
def determine_test_name(metadata, test_name_buffer = '')
|
||||
description = metadata[:description_args]
|
||||
if description.kind_of?(Array)
|
||||
|
|
@ -157,4 +169,15 @@ def set_session_as_public(session_owner)
|
|||
find('#session-settings-dialog-submit').trigger(:click)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def assert_all_tracks_seen(users=[])
|
||||
users.each do |user|
|
||||
in_client(user) do
|
||||
users.reject {|u| u==user}.each do |other|
|
||||
expect(page).to have_selector('div.track-label', text: other.name)
|
||||
#puts user.name + " is able to see " + other.name + "\'s track"
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
Reference in New Issue