checks for verified users when creating and voting proposals
This commit is contained in:
@@ -2,61 +2,96 @@ require 'rails_helper'
|
||||
|
||||
feature 'Proposals' do
|
||||
|
||||
scenario 'Creating proposals on behalve of someone' do
|
||||
####CHANGE ME
|
||||
####Should identify the user being managed
|
||||
managed_user = create(:user)
|
||||
####
|
||||
context "Create" do
|
||||
|
||||
manager = create(:manager)
|
||||
visit management_sign_in_path(login: manager.username, clave_usuario: manager.password)
|
||||
scenario 'Creating proposals on behalve of someone' do
|
||||
####CHANGE ME
|
||||
####Should identify the user being managed
|
||||
managed_user = create(:user, :level_two)
|
||||
####
|
||||
|
||||
visit new_management_proposal_path
|
||||
manager = create(:manager)
|
||||
visit management_sign_in_path(login: manager.username, clave_usuario: manager.password)
|
||||
|
||||
fill_in 'proposal_title', with: 'Help refugees'
|
||||
fill_in 'proposal_question', with: '¿Would you like to give assistance to war refugees?'
|
||||
fill_in 'proposal_summary', with: 'In summary, what we want is...'
|
||||
fill_in 'proposal_description', with: 'This is very important because...'
|
||||
fill_in 'proposal_external_url', with: 'http://rescue.org/refugees'
|
||||
fill_in 'proposal_video_url', with: 'http://youtube.com'
|
||||
fill_in 'proposal_responsible_name', with: 'Isabel Garcia'
|
||||
fill_in 'proposal_captcha', with: correct_captcha_text
|
||||
check 'proposal_terms_of_service'
|
||||
visit new_management_proposal_path
|
||||
|
||||
click_button 'Start a proposal'
|
||||
fill_in 'proposal_title', with: 'Help refugees'
|
||||
fill_in 'proposal_question', with: '¿Would you like to give assistance to war refugees?'
|
||||
fill_in 'proposal_summary', with: 'In summary, what we want is...'
|
||||
fill_in 'proposal_description', with: 'This is very important because...'
|
||||
fill_in 'proposal_external_url', with: 'http://rescue.org/refugees'
|
||||
fill_in 'proposal_video_url', with: 'http://youtube.com'
|
||||
fill_in 'proposal_captcha', with: correct_captcha_text
|
||||
check 'proposal_terms_of_service'
|
||||
|
||||
expect(page).to have_content 'Proposal was successfully created.'
|
||||
click_button 'Start a proposal'
|
||||
|
||||
expect(page).to have_content 'Help refugees'
|
||||
expect(page).to have_content '¿Would you like to give assistance to war refugees?'
|
||||
expect(page).to have_content 'In summary, what we want is...'
|
||||
expect(page).to have_content 'This is very important because...'
|
||||
expect(page).to have_content 'http://rescue.org/refugees'
|
||||
expect(page).to have_content 'http://youtube.com'
|
||||
expect(page).to have_content managed_user.name
|
||||
expect(page).to have_content I18n.l(Proposal.last.created_at.to_date)
|
||||
expect(page).to have_content 'Proposal was successfully created.'
|
||||
|
||||
expect(page).to have_content 'Help refugees'
|
||||
expect(page).to have_content '¿Would you like to give assistance to war refugees?'
|
||||
expect(page).to have_content 'In summary, what we want is...'
|
||||
expect(page).to have_content 'This is very important because...'
|
||||
expect(page).to have_content 'http://rescue.org/refugees'
|
||||
expect(page).to have_content 'http://youtube.com'
|
||||
expect(page).to have_content managed_user.name
|
||||
expect(page).to have_content I18n.l(Proposal.last.created_at.to_date)
|
||||
end
|
||||
|
||||
scenario "Should not allow unverified users to create proposals" do
|
||||
####CHANGE ME
|
||||
####Should identify the user being managed
|
||||
unverified_user = create(:user)
|
||||
####
|
||||
|
||||
manager = create(:manager)
|
||||
visit management_sign_in_path(login: manager.username, clave_usuario: manager.password)
|
||||
|
||||
visit new_management_proposal_path
|
||||
|
||||
expect(page).to have_content "User is not verified"
|
||||
end
|
||||
end
|
||||
|
||||
scenario 'Voting proposals on behalve of someone', :js do
|
||||
proposal = create(:proposal)
|
||||
context "Voting" do
|
||||
|
||||
####CHANGE ME
|
||||
####Should identify the user being managed
|
||||
managed_user = create(:user, :level_two)
|
||||
####
|
||||
scenario 'Voting proposals on behalve of someone', :js do
|
||||
proposal = create(:proposal)
|
||||
|
||||
manager = create(:manager)
|
||||
visit management_sign_in_path(login: manager.username, clave_usuario: manager.password)
|
||||
####CHANGE ME
|
||||
####Should identify the user being managed
|
||||
managed_user = create(:user, :level_two)
|
||||
####
|
||||
|
||||
visit management_proposals_path
|
||||
manager = create(:manager)
|
||||
visit management_sign_in_path(login: manager.username, clave_usuario: manager.password)
|
||||
|
||||
within("#proposals") do
|
||||
find('.in-favor a').click
|
||||
visit management_proposals_path
|
||||
|
||||
expect(page).to have_content "1 support"
|
||||
expect(page).to have_content "You already supported this proposal, share it!"
|
||||
within("#proposals") do
|
||||
find('.in-favor a').click
|
||||
|
||||
expect(page).to have_content "1 support"
|
||||
expect(page).to have_content "You already supported this proposal, share it!"
|
||||
end
|
||||
expect(URI.parse(current_url).path).to eq(management_proposals_path)
|
||||
end
|
||||
|
||||
scenario "Should not allow unverified users to vote proposals", :focus do
|
||||
proposal = create(:proposal)
|
||||
|
||||
####CHANGE ME
|
||||
####Should identify the user being managed
|
||||
unverified_user = create(:user)
|
||||
####
|
||||
|
||||
manager = create(:manager)
|
||||
visit management_sign_in_path(login: manager.username, clave_usuario: manager.password)
|
||||
|
||||
visit management_proposals_path
|
||||
|
||||
expect(page).to have_content "User is not verified"
|
||||
end
|
||||
expect(URI.parse(current_url).path).to eq(management_proposals_path)
|
||||
end
|
||||
|
||||
scenario 'Printing proposals', :js do
|
||||
|
||||
Reference in New Issue
Block a user