Improve specs for severed relationships (#29688)

This commit is contained in:
Claire 2024-03-22 17:25:36 +01:00 committed by GitHub
parent 37ca59815c
commit 81a04ac25c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 28 additions and 25 deletions

View file

@ -0,0 +1,24 @@
# frozen_string_literal: true
require 'rails_helper'
describe 'Severed relationships page' do
include ProfileStories
describe 'GET severed_relationships#index' do
before do
as_a_logged_in_user
event = Fabricate(:relationship_severance_event)
Fabricate.times(3, :severed_relationship, local_account: bob.account, relationship_severance_event: event)
Fabricate(:account_relationship_severance_event, account: bob.account, relationship_severance_event: event)
end
it 'returns http success' do
visit severed_relationships_path
expect(page).to have_title(I18n.t('settings.severed_relationships'))
expect(page).to have_link(href: following_severed_relationship_path(AccountRelationshipSeveranceEvent.first, format: :csv))
end
end
end

View file

@ -1,24 +0,0 @@
# frozen_string_literal: true
require 'rails_helper'
describe 'Severed relationships page' do
include RoutingHelper
describe 'GET severed_relationships#index' do
let(:user) { Fabricate(:user) }
let(:event) { Fabricate(:account_relationship_severance_event, account: user.account) }
before do
sign_in user
Fabricate.times(3, :severed_relationship, local_account: user.account, relationship_severance_event: event.relationship_severance_event)
end
it 'returns http success' do
get severed_relationships_path
expect(response).to have_http_status(200)
end
end
end

View file

@ -19,7 +19,7 @@ RSpec.describe BlockDomainService do
bystander.follow!(local_account)
end
it 'creates a domain block, suspends remote accounts with appropriate suspension date, records severed relationships', :aggregate_failures do
it 'creates a domain block, suspends remote accounts with appropriate suspension date, records severed relationships and sends notification', :aggregate_failures do
subject.call(DomainBlock.create!(domain: 'evil.org', severity: :suspend))
expect(DomainBlock.blocked?('evil.org')).to be true
@ -42,6 +42,9 @@ RSpec.describe BlockDomainService do
expect(severed_relationships.count).to eq 2
expect(severed_relationships[0].relationship_severance_event).to eq severed_relationships[1].relationship_severance_event
expect(severed_relationships.map { |rel| [rel.account, rel.target_account] }).to contain_exactly([bystander, local_account], [local_account, bad_account])
# Sends severed relationships notification
expect(LocalNotificationWorker).to have_enqueued_sidekiq_job(local_account.id, anything, 'AccountRelationshipSeveranceEvent', 'severed_relationships')
end
end