|
|
|
@ -7,15 +7,21 @@ describe InvitesController do |
|
|
|
|
sign_in user |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
around do |example| |
|
|
|
|
min_invite_role = Setting.min_invite_role |
|
|
|
|
example.run |
|
|
|
|
Setting.min_invite_role = min_invite_role |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
describe 'GET #index' do |
|
|
|
|
subject { get :index } |
|
|
|
|
|
|
|
|
|
let(:user) { Fabricate(:user, moderator: false, admin: false) } |
|
|
|
|
let!(:invite) { Fabricate(:invite, user: user) } |
|
|
|
|
|
|
|
|
|
context 'when user is a staff' do |
|
|
|
|
let(:user) { Fabricate(:user, moderator: true, admin: false) } |
|
|
|
|
|
|
|
|
|
it 'renders index page' do |
|
|
|
|
Setting.min_invite_role = 'user' |
|
|
|
|
expect(subject).to render_template :index |
|
|
|
|
expect(assigns(:invites)).to include invite |
|
|
|
|
expect(assigns(:invites).count).to eq 1 |
|
|
|
@ -23,9 +29,8 @@ describe InvitesController do |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
context 'when user is not a staff' do |
|
|
|
|
let(:user) { Fabricate(:user, moderator: false, admin: false) } |
|
|
|
|
|
|
|
|
|
it 'returns 403' do |
|
|
|
|
Setting.min_invite_role = 'modelator' |
|
|
|
|
expect(subject).to have_http_status 403 |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|