The `type: :feature` is automatically detected by RSpec because these tests are inside the `spec/features` folder. Using `feature` re-adds a `type: :feature` to these files, which will result in a conflict when we upgrade to Rails 5.1's system tests. Because of this change, we also need to change `background` to `before` or else these tests will fail.
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
|