mirror of
https://github.com/mastodon/mastodon.git
synced 2025-02-06 06:55:04 +00:00
Fix filtering for lists (#33842)
This commit is contained in:
parent
1be5269151
commit
334d306ccc
|
@ -42,7 +42,7 @@ class FeedManager
|
|||
when :home
|
||||
filter_from_home(status, receiver.id, build_crutches(receiver.id, [status]), :home)
|
||||
when :list
|
||||
(filter_from_list?(status, receiver) ? :filter : nil) || filter_from_home(status, receiver.account_id, build_crutches(receiver.account_id, [status], list: list), :list)
|
||||
(filter_from_list?(status, receiver) ? :filter : nil) || filter_from_home(status, receiver.account_id, build_crutches(receiver.account_id, [status], list: receiver), :list)
|
||||
when :mentions
|
||||
filter_from_mentions?(status, receiver.id) ? :filter : nil
|
||||
when :tags
|
||||
|
|
|
@ -196,6 +196,28 @@ RSpec.describe FeedManager do
|
|||
end
|
||||
end
|
||||
|
||||
context 'with list feed' do
|
||||
let(:list) { Fabricate(:list, account: bob) }
|
||||
|
||||
before do
|
||||
bob.follow!(alice)
|
||||
list.list_accounts.create!(account: alice)
|
||||
end
|
||||
|
||||
it "returns false for followee's status" do
|
||||
status = Fabricate(:status, text: 'Hello world', account: alice)
|
||||
|
||||
expect(subject.filter?(:list, status, list)).to be false
|
||||
end
|
||||
|
||||
it 'returns false for reblog by followee' do
|
||||
status = Fabricate(:status, text: 'Hello world', account: jeff)
|
||||
reblog = Fabricate(:status, reblog: status, account: alice)
|
||||
|
||||
expect(subject.filter?(:list, reblog, list)).to be false
|
||||
end
|
||||
end
|
||||
|
||||
context 'with mentions feed' do
|
||||
it 'returns true for status that mentions blocked account' do
|
||||
bob.block!(jeff)
|
||||
|
|
Loading…
Reference in New Issue
Block a user