mirror of
https://github.com/mastodon/mastodon.git
synced 2025-11-27 10:00:50 +00:00
Fix value of quote_approval_policy and quoted_status_id in ScheduledStatus serializer (#36549)
This commit is contained in:
parent
de80a54555
commit
aba30a85be
|
|
@ -8,4 +8,11 @@ class REST::ScheduledStatusSerializer < ActiveModel::Serializer
|
|||
def id
|
||||
object.id.to_s
|
||||
end
|
||||
|
||||
def params
|
||||
object.params.merge(
|
||||
quoted_status_id: object.params['quoted_status_id']&.to_s,
|
||||
quote_approval_policy: Status::QUOTE_APPROVAL_POLICY_FLAGS.keys.find { |key| object.params['quote_approval_policy']&.anybits?(Status::QUOTE_APPROVAL_POLICY_FLAGS[key] << 16) }&.to_s || 'nobody'
|
||||
)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -10,14 +10,18 @@ RSpec.describe REST::ScheduledStatusSerializer do
|
|||
)
|
||||
end
|
||||
|
||||
let(:scheduled_status) { Fabricate.build(:scheduled_status, scheduled_at: 4.minutes.from_now, params: { application_id: 123 }) }
|
||||
let(:scheduled_status) { Fabricate.build(:scheduled_status, scheduled_at: 4.minutes.from_now, params: { application_id: 123, quoted_status_id: 456, quote_approval_policy: Status::QUOTE_APPROVAL_POLICY_FLAGS[:public] << 16 }) }
|
||||
|
||||
describe 'serialization' do
|
||||
it 'returns expected values and removes application_id from params' do
|
||||
expect(subject.deep_symbolize_keys)
|
||||
.to include(
|
||||
scheduled_at: be_a(String).and(match_api_datetime_format),
|
||||
params: include(:application_id)
|
||||
params: a_hash_including(
|
||||
application_id: 123,
|
||||
quoted_status_id: '456',
|
||||
quote_approval_policy: 'public'
|
||||
)
|
||||
)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user