Fix: DistributionWorkerでString to Integerのエラーが出る問題 (#344)

* Fix: DeliveryWorkerでString to Integerのエラーが出る問題

* Test: Mastodon v3向け
This commit is contained in:
KMY(雪あすか) 2023-12-11 14:13:33 +09:00 committed by GitHub
parent 709e19cd1e
commit 3e8b4752a1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 1 deletions

View file

@ -40,6 +40,7 @@ class InstanceInfo < ApplicationRecord
return false if info.nil?
return true if EMOJI_REACTION_AVAILABLE_SOFTWARES.include?(info['software'])
return false if info.data['metadata'].nil? || !info.data['metadata'].is_a?(Hash)
features = info.data.dig('metadata', 'features')
return false if features.nil? || !features.is_a?(Array)

View file

@ -463,7 +463,7 @@ RSpec.describe Status do
describe '.emoji_reaction_availables_map' do
subject { described_class.emoji_reaction_availables_map(domains) }
let(:domains) { %w(features_available.com features_unavailable.com features_invalid.com features_nil.com no_info.com mastodon.com misskey.com) }
let(:domains) { %w(features_available.com features_unavailable.com features_invalid.com features_nil.com no_info.com mastodon.com misskey.com old_mastodon.com) }
before do
Fabricate(:instance_info, domain: 'features_available.com', software: 'mastodon', data: { metadata: { features: ['emoji_reaction'] } })
@ -472,6 +472,7 @@ RSpec.describe Status do
Fabricate(:instance_info, domain: 'features_nil.com', software: 'mastodon', data: { metadata: { features: nil } })
Fabricate(:instance_info, domain: 'mastodon.com', software: 'mastodon')
Fabricate(:instance_info, domain: 'misskey.com', software: 'misskey')
Fabricate(:instance_info, domain: 'old_mastodon.com', software: 'mastodon', data: { metadata: [] })
end
it 'availables if features contains emoji_reaction' do
@ -497,6 +498,10 @@ RSpec.describe Status do
it 'availables if misskey server' do
expect(subject['misskey.com']).to be true
end
it 'unavailables if old mastodon server' do
expect(subject['old_mastodon.com']).to be false
end
end
describe '.tagged_with' do