diff --git a/spec/serializers/nodeinfo/serializer_spec.rb b/spec/serializers/nodeinfo/serializer_spec.rb new file mode 100644 index 0000000000..c43b0b569f --- /dev/null +++ b/spec/serializers/nodeinfo/serializer_spec.rb @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe NodeInfo::Serializer do # rubocop:disable RSpec/FilePath + let(:serialization) do + JSON.parse( + ActiveModelSerializers::SerializableResource.new( + record, adapter: NodeInfo::Adapter, serializer: described_class, root: 'nodeinfo' + ).to_json + ) + end + let(:record) { {} } + + describe 'nodeinfo version' do + it 'returns 2.0' do + expect(serialization['version']).to eq '2.0' + end + end + + describe 'mastodon version' do + it 'contains kmyblue' do + expect(serialization['software']['version'].include?('kmyblue')).to be true + end + end + + describe 'metadata' do + it 'returns features' do + expect(serialization['metadata']['features']).to include 'emoji_reaction' + end + end +end diff --git a/spec/serializers/rest/instance_serializer_spec.rb b/spec/serializers/rest/instance_serializer_spec.rb index 15a5de18dd..a9a3259aa8 100644 --- a/spec/serializers/rest/instance_serializer_spec.rb +++ b/spec/serializers/rest/instance_serializer_spec.rb @@ -17,4 +17,10 @@ describe REST::InstanceSerializer do expect(serialization['usage']).to eq({ 'users' => { 'active_month' => 0 } }) end end + + describe 'fedibird_capabilities' do + it 'returns fedibird_capabilities' do + expect(serialization['fedibird_capabilities']).to include 'emoji_reaction' + end + end end