jam-cloud/web/spec/features/gear_wizard_spec.rb

59 lines
1.9 KiB
Ruby

require 'spec_helper'
describe "Gear Wizard", :js => true, :type => :feature, :capybara_feature => true, :slow => true do
subject { page }
let(:user) { FactoryGirl.create(:user) }
before(:each) do
LatencyTester.delete_all
sign_in_poltergeist user
end
it "success path" do
FactoryGirl.create(:latency_tester)
visit '/client#/account/audio'
# step 1 - intro
find("div.account-audio a[data-purpose='add-profile']").trigger(:click)
find('.btn-next').trigger(:click)
# step 2 - select gear
find('.ftue-step-title', text: 'Select & Test Audio Gear')
jk_select('Built-in', 'div[layout-wizard-step="1"] select.select-audio-input-device')
find('.btn-next.button-orange:not(.disabled)').trigger(:click)
# step 3 - configure tracks
find('.ftue-step-title', text: 'Configure Tracks')
# drag one input over to tracks area http://rubydoc.info/github/jnicklas/capybara/master/Capybara/Node/Element#drag_to-instance_method
input = first('.ftue-input')
track_slot = first('.track-target')
input.drag_to(track_slot)
find('.btn-next.button-orange:not(.disabled)').trigger(:click)
# step 4 - configure voice chat
find('.ftue-step-title', text: 'Configure Voice Chat')
find('.btn-next.button-orange:not(.disabled)').trigger(:click)
# step 5 - configure direct monitoring
find('.ftue-step-title', text: 'Turn Off Direct Monitoring')
find('.btn-next.button-orange:not(.disabled)').trigger(:click)
# step 6 - Test Router & Network
find('.ftue-step-title', text: 'Test Router & Network')
find('.button-orange.start-network-test').trigger(:click)
find('.user-btn', text: 'RUN NETWORK TEST ANYWAY').trigger(:click)
find('.button-orange.start-network-test')
find('.btn-next.button-orange:not(.disabled)').trigger(:click)
# step 7 - Success
find('.ftue-step-title', text: 'Success!')
find('.btn-close.button-orange').trigger(:click)
end
end