Refactor spec to use let syntax to DRY scenarios

This commit is contained in:
Angel Perez
2018-03-22 11:14:19 -04:00
parent 0a6ee897a7
commit dfbf4b8489

View File

@@ -135,44 +135,38 @@ feature 'Proposals' do
context "Voting" do context "Voting" do
scenario 'Voting proposals on behalf of someone in index view', :js do let!(:proposal) { create(:proposal) }
proposal = create(:proposal)
scenario 'Voting proposals on behalf of someone in index view', :js do
user = create(:user, :level_two) user = create(:user, :level_two)
login_managed_user(user) login_managed_user(user)
click_link "Support proposals" click_link "Support proposals"
within(".proposals-list") do within(".proposals-list") do
find('.in-favor a').click click_link('Support')
expect(page).to have_content "1 support" expect(page).to have_content "1 support"
expect(page).to have_content "You have already supported this proposal. Share it!" expect(page).to have_content "You have already supported this proposal. Share it!"
end end
expect(page).to have_current_path(management_proposals_path) expect(page).to have_current_path(management_proposals_path)
end end
scenario 'Voting proposals on behalf of someone in show view', :js do scenario 'Voting proposals on behalf of someone in show view', :js do
proposal = create(:proposal)
user = create(:user, :level_two) user = create(:user, :level_two)
login_managed_user(user) login_managed_user(user)
click_link "Support proposals" click_link "Support proposals"
within(".proposals-list") do within(".proposals-list") { click_link proposal.title }
click_link proposal.title within("#proposal_#{proposal.id}_votes") { click_link('Support') }
end
find('.in-favor a').click
expect(page).to have_content "1 support" expect(page).to have_content "1 support"
expect(page).to have_content "You have already supported this proposal. Share it!" expect(page).to have_content "You have already supported this proposal. Share it!"
expect(page).to have_current_path(management_proposal_path(proposal)) expect(page).to have_current_path(management_proposal_path(proposal))
end end
scenario "Should not allow unverified users to vote proposals" do scenario "Should not allow unverified users to vote proposals" do
proposal = create(:proposal)
user = create(:user) user = create(:user)
login_managed_user(user) login_managed_user(user)