mirror of
https://github.com/glitch-soc/mastodon.git
synced 2025-12-16 01:09:55 +00:00
Merge commit '5acec087caed4a2fdf0fd8ed11f891222496f321' into glitch-soc/merge-upstream
This commit is contained in:
@@ -48,7 +48,7 @@ RSpec.describe Admin::AccountsController do
|
||||
end
|
||||
|
||||
def accounts_table_rows
|
||||
Nokogiri::Slop(response.body).css('table.accounts-table tr')
|
||||
response.parsed_body.css('table.accounts-table tr')
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ RSpec.describe Admin::ExportDomainBlocksController do
|
||||
end
|
||||
|
||||
def batch_table_rows
|
||||
Nokogiri::Slop(response.body).css('body div.batch-table__row')
|
||||
response.parsed_body.css('body div.batch-table__row')
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ RSpec.describe Admin::InstancesController do
|
||||
end
|
||||
|
||||
def instance_directory_links
|
||||
Nokogiri::Slop(response.body).css('div.directory__tag a')
|
||||
response.parsed_body.css('div.directory__tag a')
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -342,7 +342,7 @@ RSpec.describe Auth::RegistrationsController do
|
||||
end
|
||||
|
||||
def username_error_text
|
||||
Nokogiri::Slop(response.body).css('.user_account_username .error').text
|
||||
response.parsed_body.css('.user_account_username .error').text
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -1,84 +0,0 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require 'rails_helper'
|
||||
|
||||
RSpec.describe InvitesController do
|
||||
render_views
|
||||
|
||||
let(:user) { Fabricate(:user) }
|
||||
|
||||
before do
|
||||
sign_in user
|
||||
end
|
||||
|
||||
describe 'GET #index' do
|
||||
before do
|
||||
Fabricate(:invite, user: user)
|
||||
end
|
||||
|
||||
context 'when everyone can invite' do
|
||||
before do
|
||||
UserRole.everyone.update(permissions: UserRole.everyone.permissions | UserRole::FLAGS[:invite_users])
|
||||
get :index
|
||||
end
|
||||
|
||||
it 'returns http success' do
|
||||
expect(response).to have_http_status(:success)
|
||||
end
|
||||
|
||||
it 'returns private cache control headers' do
|
||||
expect(response.headers['Cache-Control']).to include('private, no-store')
|
||||
end
|
||||
end
|
||||
|
||||
context 'when not everyone can invite' do
|
||||
before do
|
||||
UserRole.everyone.update(permissions: UserRole.everyone.permissions & ~UserRole::FLAGS[:invite_users])
|
||||
get :index
|
||||
end
|
||||
|
||||
it 'returns http forbidden' do
|
||||
expect(response).to have_http_status(403)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe 'POST #create' do
|
||||
subject { post :create, params: { invite: { max_uses: '10', expires_in: 1800 } } }
|
||||
|
||||
context 'when everyone can invite' do
|
||||
before do
|
||||
UserRole.everyone.update(permissions: UserRole.everyone.permissions | UserRole::FLAGS[:invite_users])
|
||||
end
|
||||
|
||||
it 'succeeds to create a invite' do
|
||||
expect { subject }.to change(Invite, :count).by(1)
|
||||
expect(subject).to redirect_to invites_path
|
||||
expect(Invite.last).to have_attributes(user_id: user.id, max_uses: 10)
|
||||
end
|
||||
end
|
||||
|
||||
context 'when not everyone can invite' do
|
||||
before do
|
||||
UserRole.everyone.update(permissions: UserRole.everyone.permissions & ~UserRole::FLAGS[:invite_users])
|
||||
end
|
||||
|
||||
it 'returns http forbidden' do
|
||||
expect(subject).to have_http_status(403)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe 'DELETE #destroy' do
|
||||
subject { delete :destroy, params: { id: invite.id } }
|
||||
|
||||
let(:invite) { Fabricate(:invite, user: user, expires_at: nil) }
|
||||
|
||||
it 'expires invite and redirects' do
|
||||
expect { subject }
|
||||
.to(change { invite.reload.expired? }.to(true))
|
||||
expect(response)
|
||||
.to redirect_to invites_path
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user