Initial commit
This commit is contained in:
36
spec/features/admin_masquerading_as_another_user_spec.rb
Normal file
36
spec/features/admin_masquerading_as_another_user_spec.rb
Normal file
@@ -0,0 +1,36 @@
|
||||
require "rails_helper"
|
||||
|
||||
feature "Admin masquerading as an user" do
|
||||
let!(:current_user) { create(:user, admin: true, email: "me@test.com") }
|
||||
let!(:another_user) { create(:user, admin: false, email: "them@test.com") }
|
||||
let(:project) { create(:project, account: current_user.primary_account) }
|
||||
|
||||
scenario "masquerades as user and stops" do
|
||||
my_project = create(:project, name: "My Project", account: current_user.primary_account)
|
||||
another_project = create(:project, name: "Their Project", account: another_user.primary_account)
|
||||
sign_in current_user
|
||||
visit admin_users_path
|
||||
|
||||
click_link "Masquerade"
|
||||
|
||||
expect(page).not_to have_content("me@test.com")
|
||||
expect(page).to have_content("them@test.com")
|
||||
expect(page).to have_content("Their Project")
|
||||
expect(page).not_to have_content("My Project")
|
||||
expect(page).to have_content "Stop Masquerading"
|
||||
|
||||
click_link "Stop Masquerading"
|
||||
|
||||
expect(page).to have_content("me@test.com")
|
||||
expect(page).to have_content("them@test.com")
|
||||
expect(page).to have_content("Masquerade")
|
||||
|
||||
visit projects_path
|
||||
|
||||
expect(page).to have_content("me@test.com")
|
||||
expect(page).not_to have_content("them@test.com")
|
||||
expect(page).to have_content("My Project")
|
||||
expect(page).not_to have_content("Their Project")
|
||||
expect(page).not_to have_content "Stop Masquerading"
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user