We get rid of database cleaner, and JavaScript tests are faster because between tests we now rollback transactions instead of truncating the database.
34 lines
820 B
Ruby
34 lines
820 B
Ruby
require "rails_helper"
|
|
|
|
describe "Management" do
|
|
let(:user) { create(:user) }
|
|
|
|
scenario "Should show admin menu if logged user is admin" do
|
|
create(:administrator, user: user)
|
|
login_as(user)
|
|
visit root_path
|
|
|
|
expect(page).to have_link("Management")
|
|
|
|
click_link "Management"
|
|
|
|
expect(page).to have_content("My content")
|
|
expect(page).to have_content("My account")
|
|
expect(page).to have_content("Sign out")
|
|
end
|
|
|
|
scenario "Should not show admin menu if logged user is manager" do
|
|
create(:manager, user: user)
|
|
login_as(user)
|
|
visit root_path
|
|
|
|
expect(page).to have_link("Management")
|
|
|
|
click_link "Management"
|
|
|
|
expect(page).not_to have_content("My content")
|
|
expect(page).not_to have_content("My account")
|
|
expect(page).not_to have_content("Sign out")
|
|
end
|
|
end
|