mirror of
https://github.com/mastodon/mastodon.git
synced 2024-11-23 22:41:29 +00:00
block scheduled status from frozen users (#30729)
This commit is contained in:
parent
683db3ab25
commit
2526b32ad3
|
@ -9,6 +9,8 @@ class PublishScheduledStatusWorker
|
|||
scheduled_status = ScheduledStatus.find(scheduled_status_id)
|
||||
scheduled_status.destroy!
|
||||
|
||||
return true if scheduled_status.account.user.disabled?
|
||||
|
||||
PostStatusService.new.call(
|
||||
scheduled_status.account,
|
||||
options_with_objects(scheduled_status.params.with_indifferent_access)
|
||||
|
|
|
@ -12,6 +12,7 @@ RSpec.describe PublishScheduledStatusWorker do
|
|||
subject.perform(scheduled_status.id)
|
||||
end
|
||||
|
||||
context 'when the account is not disabled' do
|
||||
it 'creates a status' do
|
||||
expect(scheduled_status.account.statuses.first.text).to eq 'Hello world, future!'
|
||||
end
|
||||
|
@ -20,4 +21,17 @@ RSpec.describe PublishScheduledStatusWorker do
|
|||
expect(ScheduledStatus.find_by(id: scheduled_status.id)).to be_nil
|
||||
end
|
||||
end
|
||||
|
||||
context 'when the account is disabled' do
|
||||
let(:scheduled_status) { Fabricate(:scheduled_status, account: Fabricate(:account, user: Fabricate(:user, disabled: true))) }
|
||||
|
||||
it 'does not create a status' do
|
||||
expect(Status.count).to eq 0
|
||||
end
|
||||
|
||||
it 'removes the scheduled status' do
|
||||
expect(ScheduledStatus.find_by(id: scheduled_status.id)).to be_nil
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue