Files
old-holivud2/spec/features/account_manager_managing_account_members_spec.rb
2020-05-31 22:38:19 +02:00

118 lines
3.8 KiB
Ruby

require "rails_helper"
feature "Account manager managing account members" do
scenario "promoting an asssociate to project manager" do
account = create(:account)
account_manager = create(:user, :account_manager, primary_account: account)
associate = create(:user, :associate, primary_account: account, email: "associate.user@test.com")
sign_in account_manager
visit account_auths_path
expect(page).to have_content "Associate"
within "#account_auth_#{associate.account_auths.first.id}" do
select "Project Manager", from: "Role"
click_on "Change Role"
end
expect(page).to have_content "Role has been updated"
expect(page).to have_content "Project Manager"
end
scenario "demoting a project manager to associate" do
account = create(:account)
account_manager = create(:user, :account_manager, primary_account: account)
associate = create(:user, :manager, primary_account: account, email: "associate.user@test.com")
sign_in account_manager
visit account_auths_path
expect(page).to have_content "Project Manager"
within "#account_auth_#{associate.account_auths.first.id}" do
select "Associate", from: "Role"
click_on "Change Role"
end
expect(page).to have_content "Role has been updated"
expect(page).to have_content "Associate"
end
scenario "promoting an asssociate to account manager" do
account = create(:account)
account_manager = create(:user, :account_manager, primary_account: account)
associate = create(:user, :associate, primary_account: account, email: "associate.user@test.com")
sign_in account_manager
visit account_auths_path
expect(page).to have_content "Associate"
within "#account_auth_#{associate.account_auths.first.id}" do
select "Account Manager", from: "Role"
click_on "Change Role"
end
expect(page).to have_content "Role has been updated"
expect(page).to have_content "Account Manager"
end
scenario "demoting an account manager to associate" do
account = create(:account)
account_manager = create(:user, :account_manager, primary_account: account)
associate = create(:user, :account_manager, primary_account: account, email: "associate.user@test.com")
sign_in account_manager
visit account_auths_path
expect(page).to have_content "Account Manager"
within "#account_auth_#{associate.account_auths.first.id}" do
select "Associate", from: "Role"
click_on "Change Role"
end
expect(page).to have_content "Role has been updated"
expect(page).to have_content "Associate"
end
scenario "promoting a project_manager to account manager" do
account = create(:account)
account_manager = create(:user, :account_manager, primary_account: account)
associate = create(:user, :manager, primary_account: account, email: "associate.user@test.com")
sign_in account_manager
visit account_auths_path
expect(page).to have_content "Project Manager"
within "#account_auth_#{associate.account_auths.first.id}" do
select "Account Manager", from: "Role"
click_on "Change Role"
end
expect(page).to have_content "Role has been updated"
expect(page).to have_content "Account Manager"
end
scenario "demoting an account manager to associate" do
account = create(:account)
account_manager = create(:user, :account_manager, primary_account: account)
associate = create(:user, :account_manager, primary_account: account, email: "associate.user@test.com")
sign_in account_manager
visit account_auths_path
expect(page).to have_content "Account Manager"
within "#account_auth_#{associate.account_auths.first.id}" do
select "Project Manager", from: "Role"
click_on "Change Role"
end
expect(page).to have_content "Role has been updated"
expect(page).to have_content "Project Manager"
end
end