Serializers spec coverage (#24017)
This commit is contained in:
parent
53309fa31a
commit
56bddfbfa3
|
@ -698,7 +698,11 @@ RSpec/FilePath:
|
||||||
- 'spec/lib/activitypub/tag_manager_spec.rb'
|
- 'spec/lib/activitypub/tag_manager_spec.rb'
|
||||||
- 'spec/lib/ostatus/tag_manager_spec.rb'
|
- 'spec/lib/ostatus/tag_manager_spec.rb'
|
||||||
- 'spec/lib/sanitize_config_spec.rb'
|
- 'spec/lib/sanitize_config_spec.rb'
|
||||||
|
- 'spec/serializers/activitypub/device_serializer_spec.rb'
|
||||||
- 'spec/serializers/activitypub/note_serializer_spec.rb'
|
- 'spec/serializers/activitypub/note_serializer_spec.rb'
|
||||||
|
- 'spec/serializers/activitypub/one_time_key_serializer_spec.rb'
|
||||||
|
- 'spec/serializers/activitypub/undo_like_serializer_spec.rb'
|
||||||
|
- 'spec/serializers/activitypub/vote_serializer_spec.rb'
|
||||||
- 'spec/serializers/activitypub/update_poll_serializer_spec.rb'
|
- 'spec/serializers/activitypub/update_poll_serializer_spec.rb'
|
||||||
- 'spec/services/activitypub/fetch_featured_collection_service_spec.rb'
|
- 'spec/services/activitypub/fetch_featured_collection_service_spec.rb'
|
||||||
- 'spec/services/activitypub/fetch_featured_tags_collection_service_spec.rb'
|
- 'spec/services/activitypub/fetch_featured_tags_collection_service_spec.rb'
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
Fabricator(:encrypted_message) do
|
||||||
|
device
|
||||||
|
from_account { Fabricate(:account) }
|
||||||
|
from_device_id { Faker::Number.number(digits: 5) }
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe ActivityPub::DeviceSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Fabricate(:device) }
|
||||||
|
|
||||||
|
describe 'type' do
|
||||||
|
it 'returns correct serialized type' do
|
||||||
|
expect(serialization['type']).to eq('Device')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe ActivityPub::OneTimeKeySerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Fabricate(:one_time_key) }
|
||||||
|
|
||||||
|
describe 'type' do
|
||||||
|
it 'returns correct serialized type' do
|
||||||
|
expect(serialization['type']).to eq('Curve25519Key')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe ActivityPub::UndoLikeSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Fabricate(:favourite) }
|
||||||
|
|
||||||
|
describe 'type' do
|
||||||
|
it 'returns correct serialized type' do
|
||||||
|
expect(serialization['type']).to eq('Undo')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe ActivityPub::VoteSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Fabricate(:poll_vote) }
|
||||||
|
|
||||||
|
describe 'type' do
|
||||||
|
it 'returns correct serialized type' do
|
||||||
|
expect(serialization['type']).to eq('Create')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe REST::EncryptedMessageSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Fabricate(:encrypted_message) }
|
||||||
|
|
||||||
|
describe 'account' do
|
||||||
|
it 'returns the associated account' do
|
||||||
|
expect(serialization['account_id']).to eq(record.from_account.id.to_s)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe REST::InstanceSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { InstancePresenter.new }
|
||||||
|
|
||||||
|
describe 'usage' do
|
||||||
|
it 'returns recent usage data' do
|
||||||
|
expect(serialization['usage']).to eq({ 'users' => { 'active_month' => 0 } })
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe REST::Keys::ClaimResultSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Keys::ClaimService::Result.new(Account.new(id: 123), 456) }
|
||||||
|
|
||||||
|
describe 'account' do
|
||||||
|
it 'returns the associated account' do
|
||||||
|
expect(serialization['account_id']).to eq('123')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe REST::Keys::DeviceSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Device.new(name: 'Device name') }
|
||||||
|
|
||||||
|
describe 'name' do
|
||||||
|
it 'returns the name' do
|
||||||
|
expect(serialization['name']).to eq('Device name')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,20 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe REST::Keys::QueryResultSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) { Keys::QueryService::Result.new(Account.new(id: 123), []) }
|
||||||
|
|
||||||
|
describe 'account' do
|
||||||
|
it 'returns the associated account id' do
|
||||||
|
expect(serialization['account_id']).to eq('123')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,26 @@
|
||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
describe REST::SuggestionSerializer do
|
||||||
|
let(:serialization) do
|
||||||
|
JSON.parse(
|
||||||
|
ActiveModelSerializers::SerializableResource.new(
|
||||||
|
record, serializer: described_class
|
||||||
|
).to_json
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:record) do
|
||||||
|
AccountSuggestions::Suggestion.new(
|
||||||
|
account: account,
|
||||||
|
source: 'SuggestionSource'
|
||||||
|
)
|
||||||
|
end
|
||||||
|
let(:account) { Fabricate(:account) }
|
||||||
|
|
||||||
|
describe 'account' do
|
||||||
|
it 'returns the associated account' do
|
||||||
|
expect(serialization['account']['id']).to eq(account.id.to_s)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Reference in New Issue