diff options
author | Claire <claire.github-309c@sitedethib.com> | 2022-11-07 19:47:48 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-07 19:47:48 +0100 |
commit | 3114c826a7a6b2b10bff722c59cca57abe7f819f (patch) | |
tree | 59075f264236fb22ed9b58f5d946371d17d4bc8b /spec/lib | |
parent | 106648b456396cd7b433848dd6608537d5b811f4 (diff) |
Fix filter handling in status cache hydration (#19963)
Diffstat (limited to 'spec/lib')
-rw-r--r-- | spec/lib/status_cache_hydrator_spec.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/lib/status_cache_hydrator_spec.rb b/spec/lib/status_cache_hydrator_spec.rb index c9d8d0fe1..5c78de711 100644 --- a/spec/lib/status_cache_hydrator_spec.rb +++ b/spec/lib/status_cache_hydrator_spec.rb @@ -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 |