0
0
Fork 0

Fix filter handling in status cache hydration (#19963)

This commit is contained in:
Claire 2022-11-07 19:47:48 +01:00 committed by GitHub
parent 106648b456
commit 3114c826a7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 2 deletions

View file

@ -28,6 +28,18 @@ describe StatusCacheHydrator do
end
end
context 'when handling a filtered status' do
let(:status) { Fabricate(:status, text: 'this toot is about that banned word') }
before do
account.custom_filters.create!(phrase: 'filter1', context: %w(home), action: :hide, keywords_attributes: [{ keyword: 'banned' }, { keyword: 'irrelevant' }])
end
it 'renders the same attributes as a full render' do
expect(subject).to eql(compare_to_hash)
end
end
context 'when handling a reblog' do
let(:reblog) { Fabricate(:status) }
let(:status) { Fabricate(:status, reblog: reblog) }
@ -99,6 +111,18 @@ describe StatusCacheHydrator do
expect(subject).to eql(compare_to_hash)
end
end
context 'that matches account filters' do
let(:reblog) { Fabricate(:status, text: 'this toot is about that banned word') }
before do
account.custom_filters.create!(phrase: 'filter1', context: %w(home), action: :hide, keywords_attributes: [{ keyword: 'banned' }, { keyword: 'irrelevant' }])
end
it 'renders the same attributes as a full render' do
expect(subject).to eql(compare_to_hash)
end
end
end
end