parent
2e7cdd0516
commit
12d068d38d
2 changed files with 14 additions and 2 deletions
|
@ -147,7 +147,7 @@ class StatusReachFinder
|
||||||
|
|
||||||
def friend_inboxes
|
def friend_inboxes
|
||||||
if @status.public_visibility? || @status.public_unlisted_visibility? || (@status.unlisted_visibility? && (@status.public_searchability? || @status.public_unlisted_searchability?))
|
if @status.public_visibility? || @status.public_unlisted_visibility? || (@status.unlisted_visibility? && (@status.public_searchability? || @status.public_unlisted_searchability?))
|
||||||
DeliveryFailureTracker.without_unavailable(FriendDomain.distributables.where(delivery_local: true).pluck(:inbox_url))
|
DeliveryFailureTracker.without_unavailable(FriendDomain.distributables.where(delivery_local: true).where.not(domain: AccountDomainBlock.where(account: @status.account).select(:domain)).pluck(:inbox_url))
|
||||||
else
|
else
|
||||||
[]
|
[]
|
||||||
end
|
end
|
||||||
|
@ -155,7 +155,7 @@ class StatusReachFinder
|
||||||
|
|
||||||
def nolocal_friend_inboxes
|
def nolocal_friend_inboxes
|
||||||
if @status.public_visibility?
|
if @status.public_visibility?
|
||||||
DeliveryFailureTracker.without_unavailable(FriendDomain.distributables.where(delivery_local: false).pluck(:inbox_url))
|
DeliveryFailureTracker.without_unavailable(FriendDomain.distributables.where(delivery_local: false).where.not(domain: AccountDomainBlock.where(account: @status.account).select(:domain)).pluck(:inbox_url))
|
||||||
else
|
else
|
||||||
[]
|
[]
|
||||||
end
|
end
|
||||||
|
|
|
@ -239,6 +239,18 @@ describe StatusReachFinder do
|
||||||
expect(subject.inboxes_for_friend).to_not include 'https://foo.bar/inbox'
|
expect(subject.inboxes_for_friend).to_not include 'https://foo.bar/inbox'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
context 'when distributable but domain blocked by account' do
|
||||||
|
before do
|
||||||
|
Fabricate(:account_domain_block, account: alice, domain: 'foo.bar')
|
||||||
|
Fabricate(:friend_domain, domain: 'foo.bar', inbox_url: 'https://foo.bar/inbox', passive_state: :accepted, pseudo_relay: true)
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'send status' do
|
||||||
|
expect(subject.inboxes).to_not include 'https://foo.bar/inbox'
|
||||||
|
expect(subject.inboxes_for_friend).to_not include 'https://foo.bar/inbox'
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'when it contains distributable friend server' do
|
context 'when it contains distributable friend server' do
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue