private
def preprocess_attributes!
- @text = @options.delete(:spoiler_text) if @text.blank? && @options[:spoiler_text].present?
+ if @text.blank? && @options[:spoiler_text].present?
+ @text = '.'
+ @text = @media.find(&:video?) ? '📹' : '🖼' if @media.size > 0
+ end
@visibility = @options[:visibility] || @account.user&.setting_default_privacy
- @visibility = :unlisted if @visibility == :public && @account.silenced
+ @visibility = :unlisted if @visibility == :public && @account.silenced?
@scheduled_at = @options[:scheduled_at]&.to_datetime
@scheduled_at = nil if scheduled_in_the_past?
rescue ArgumentError
end
it 'does not notify when recipient is suspended' do
- recipient.update(suspended: true)
+ recipient.suspend!
is_expected.to_not change(Notification, :count)
end
-
+
context 'for direct messages' do
let(:activity) { Fabricate(:mention, account: recipient, status: Fabricate(:status, account: sender, visibility: :direct)) }