Merge commit '610cf6c3713e414995ea1a57110db400ccb88dd2' into glitch-soc/merge-upstream

Conflicts:
- `app/models/trends.rb`:
  Conflict due to glitch-soc's code splitting trends mailing depending on type.
  Ported upstream's changes.
This commit is contained in:
Claire
2023-07-12 15:38:35 +02:00
16 changed files with 104 additions and 76 deletions

View File

@ -23,8 +23,6 @@ RSpec.describe Api::V1::ReportsController do
let(:rule_ids) { nil }
before do
allow(AdminMailer).to receive(:new_report)
.and_return(instance_double(ActionMailer::MessageDelivery, deliver_later: nil))
post :create, params: { status_ids: [status.id], account_id: target_account.id, comment: 'reasons', category: category, rule_ids: rule_ids, forward: forward }
end
@ -41,7 +39,7 @@ RSpec.describe Api::V1::ReportsController do
end
it 'sends e-mails to admins' do
expect(AdminMailer).to have_received(:new_report).with(admin.account, Report)
expect(ActionMailer::Base.deliveries.first.to).to eq([admin.email])
end
context 'when a status does not belong to the reported account' do

View File

@ -14,13 +14,11 @@ RSpec.describe Disputes::AppealsController do
let(:strike) { Fabricate(:account_warning, target_account: current_user.account) }
before do
allow(AdminMailer).to receive(:new_appeal)
.and_return(instance_double(ActionMailer::MessageDelivery, deliver_later: nil))
post :create, params: { strike_id: strike.id, appeal: { text: 'Foo' } }
end
it 'notifies staff about new appeal' do
expect(AdminMailer).to have_received(:new_appeal).with(admin.account, Appeal.last)
expect(ActionMailer::Base.deliveries.first.to).to eq([admin.email])
end
it 'redirects back to the strike page' do

View File

@ -7,7 +7,7 @@ RSpec.describe AdminMailer do
let(:sender) { Fabricate(:account, username: 'John') }
let(:recipient) { Fabricate(:account, username: 'Mike') }
let(:report) { Fabricate(:report, account: sender, target_account: recipient) }
let(:mail) { described_class.new_report(recipient, report) }
let(:mail) { described_class.with(recipient: recipient).new_report(report) }
before do
recipient.user.update(locale: :en)
@ -27,7 +27,7 @@ RSpec.describe AdminMailer do
describe '.new_appeal' do
let(:appeal) { Fabricate(:appeal) }
let(:recipient) { Fabricate(:account, username: 'Kurt') }
let(:mail) { described_class.new_appeal(recipient, appeal) }
let(:mail) { described_class.with(recipient: recipient).new_appeal(appeal) }
before do
recipient.user.update(locale: :en)
@ -47,7 +47,7 @@ RSpec.describe AdminMailer do
describe '.new_pending_account' do
let(:recipient) { Fabricate(:account, username: 'Barklums') }
let(:user) { Fabricate(:user) }
let(:mail) { described_class.new_pending_account(recipient, user) }
let(:mail) { described_class.with(recipient: recipient).new_pending_account(user) }
before do
recipient.user.update(locale: :en)
@ -69,7 +69,7 @@ RSpec.describe AdminMailer do
let(:links) { [] }
let(:statuses) { [] }
let(:tags) { [] }
let(:mail) { described_class.new_trends(recipient, links, tags, statuses) }
let(:mail) { described_class.with(recipient: recipient).new_trends(links, tags, statuses) }
before do
recipient.user.update(locale: :en)

View File

@ -5,16 +5,16 @@
class AdminMailerPreview < ActionMailer::Preview
# Preview this email at http://localhost:3000/rails/mailers/admin_mailer/new_pending_account
def new_pending_account
AdminMailer.new_pending_account(Account.first, User.pending.first)
AdminMailer.with(recipient: Account.first).new_pending_account(User.pending.first)
end
# Preview this email at http://localhost:3000/rails/mailers/admin_mailer/new_trends
def new_trends
AdminMailer.new_trends(Account.first, PreviewCard.joins(:trend).limit(3), Tag.limit(3), Status.joins(:trend).where(reblog_of_id: nil).limit(3))
AdminMailer.with(recipient: Account.first).new_trends(PreviewCard.joins(:trend).limit(3), Tag.limit(3), Status.joins(:trend).where(reblog_of_id: nil).limit(3))
end
# Preview this email at http://localhost:3000/rails/mailers/admin_mailer/new_appeal
def new_appeal
AdminMailer.new_appeal(Account.first, Appeal.first)
AdminMailer.with(recipient: Account.first).new_appeal(Appeal.first)
end
end

View File

@ -32,9 +32,4 @@ class NotificationMailerPreview < ActionMailer::Preview
r = Status.where.not(reblog_of_id: nil).first
NotificationMailer.reblog(r.reblog.account, Notification.find_by(activity: r))
end
# Preview this email at http://localhost:3000/rails/mailers/notification_mailer/digest
def digest
NotificationMailer.digest(Account.first, since: 90.days.ago)
end
end