40 lines
1.1 KiB
Ruby
40 lines
1.1 KiB
Ruby
require 'rails_helper'
|
|
|
|
describe Admin::SuspensionsController do
|
|
render_views
|
|
|
|
before do
|
|
sign_in Fabricate(:user, admin: true), scope: :user
|
|
end
|
|
|
|
describe 'GET #new' do
|
|
it 'returns 200' do
|
|
get :new, params: { account_id: Fabricate(:account).id, report_id: Fabricate(:report).id }
|
|
expect(response).to have_http_status(200)
|
|
end
|
|
end
|
|
|
|
describe 'POST #create' do
|
|
it 'redirects to admin accounts page' do
|
|
account = Fabricate(:account, suspended: false)
|
|
expect(Admin::SuspensionWorker).to receive(:perform_async).with(account.id)
|
|
|
|
post :create, params: { account_id: account.id, form_admin_suspension_confirmation: { acct: account.acct } }
|
|
|
|
expect(response).to redirect_to(admin_accounts_path)
|
|
end
|
|
end
|
|
|
|
describe 'DELETE #destroy' do
|
|
it 'redirects to admin accounts page' do
|
|
account = Fabricate(:account, suspended: true)
|
|
|
|
delete :destroy, params: { account_id: account.id }
|
|
|
|
account.reload
|
|
expect(account.suspended?).to eq false
|
|
expect(response).to redirect_to(admin_accounts_path)
|
|
end
|
|
end
|
|
end
|