discourse/plugins/styleguide/spec/integration/access_spec.rb
David Taylor c9dab6fd08
DEV: Automatically require 'rails_helper' in all specs (#16077)
It's very easy to forget to add `require 'rails_helper'` at the top of every core/plugin spec file, and omissions can cause some very confusing/sporadic errors.

By setting this flag in `.rspec`, we can remove the need for `require 'rails_helper'` entirely.
2022-03-01 17:50:50 +00:00

64 lines
1.2 KiB
Ruby
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# frozen_string_literal: true
describe 'SiteSetting.styleguide_admin_only' do
before do
SiteSetting.styleguide_enabled = true
end
context 'styleguide is admin only' do
before do
SiteSetting.styleguide_admin_only = true
end
context 'user is admin' do
before do
sign_in(Fabricate(:admin))
end
it 'shows the styleguide' do
get '/styleguide'
expect(response.status).to eq(200)
end
end
context 'user is not admin' do
before do
sign_in(Fabricate(:user))
end
it 'doesnt allow access' do
get '/styleguide'
expect(response.status).to eq(403)
end
end
end
end
describe 'SiteSetting.styleguide_enabled' do
before do
sign_in(Fabricate(:admin))
end
context 'style is enabled' do
before do
SiteSetting.styleguide_enabled = true
end
it 'shows the styleguide' do
get '/styleguide'
expect(response.status).to eq(200)
end
end
context 'styleguide is disabled' do
before do
SiteSetting.styleguide_enabled = false
end
it 'returns a page not found' do
get '/styleguide'
expect(response.status).to eq(404)
end
end
end